因為工作需求要去了解如何使用 python 去操作 Linux kernel 中的 inotify。所以需要在 Linux 環境下使用 python。
這時候去運行一個 Linux 的 container 用來做實驗會很方便。因此首先要撰寫 dockerfile。
FROM ubuntu:latest
# Install dependencies
RUN apt-get update && apt-get install -y \
software-properties-common \
wget \
build-essential \
openssh-server
# Install python 3.12
RUN add-apt-repository ppa:deadsnakes/ppa
RUN apt-get update && apt-get install -y python3.12 python3.12-venv python3.12-dev python3-pip
WORKDIR /app
RUN mkdir /var/run/sshd
RUN echo 'root:root' | chpasswd
RUN sed -i 's/^#\?PermitRootLogin .*/PermitRootLogin yes/' /etc/ssh/sshd_config
RUN sed -i 's/^#\?PasswordAuthentication .*/PasswordAuthentication yes/' /etc/ssh/sshd_config
RUN echo "export VISIBLE=now" >> /etc/profile
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]`
docker build -t my-python-ubuntu .
docker run -d -p 2222:22 --name my-python-container my-python-ubuntu