一. 看看Dockerfile
FROM python
COPY requReturn_2.py /code/
COPY config.conf /code/
COPY configuration.py /code/
WORKDIR /code
RUN pip3 install flask
RUN pip3 install sqlalchemy
RUN pip3 install pymysql
CMD ['python3','requReturn_2.py']
1. COPY指令是为了将容器外面的程序,也就是在我宿主机上的程序拷贝到容器里面的一个目录下面,这个目录最好自己先进去创建一下。COPY的宿主机的程序必须在Dockerfile构建目录的上下文中。什么叫上下文,简单来说,就是构建Dockerfile的那个文件目录。
2. WORKDIR就是指定容器创建之后,一旦我们去run那个容器,这个容器默认进入的目录,那我的容器是为了跑Python程序的,那当然这个工作目录必须有我的所有程序以及我的程序所需要的一些配置文件咯,都得放到这个目录里面。
3. RUN指令就是为了安装一下依赖包,比如我的Python程序里面是需要flask,pymysql这些包的,所以我就需要通过RUN指令安装一下,不然你进去容器跑程序的时候,会报找不到包的错误的。
4. 如果你发现你无法通过RUN指令安装一些东西,也就是无法pip install的话,可能是你的容器无法访问Internet,你可以尝试重启一下docker服务,命令为:service docker restart。因为我当时就就是遇到这个问题,就这么解决的。
5. CMD代表的是容器启动时默认执行的命令。