DockerFile的使用
DockerFile 命令
FROM # from:基础镜像,一切从这里开始构建
MAINTAINER # maintainer:镜像是谁写的, 姓名+邮箱
RUN # run:镜像构建的时候需要运行的命令
ADD # add:步骤,tomcat镜像,这个tomcat压缩包!添加内容 添加同目录
WORKDIR # workdir:镜像的工作目录
VOLUME # volume:挂载的目录
EXPOSE # expose 暴露端口配置
ENTRYPOINT # entrypoint:指定这个容器启动的时候要运行的命令,可以追加命令
ONBUILD # onbuild:当构建一个被继承DockerFile这个时候就会运行onbuild的指令,触发指令
COPY # copy:类似ADD,将我们文件拷贝到镜像中
ENV # env:构建的时候设置环境变量!
CMD # cmd:指定这个容器启动的时候要运行的命令,只有最后一个会生效,可被替代
创建镜像
docker build -t '镜像名' .
FastAPI项目 创建镜像演示
同理作者也构建了Flask
的镜像 https://github.com/tiangolo/uwsgi-nginx-flask-docker
- 参考个人练习项目 https://github.com/CoderCharm/MallAPI/blob/master/Dockerfile
- 参考FastAPI作者写的镜像 https://github.com/tiangolo/uvicorn-gunicorn-fastapi-docker
FROM tiangolo/uvicorn-gunicorn-fastapi:python3.7
COPY ./app /app
CMD cd /app
RUN pip install --no-cache-dir -r requirements.txt -i https://pypi.douban.com/simple
CMD uvicorn main:app --host=0.0.0.0 --port=8030
构建镜像
docker build -t 'mallapp' .
后台启动容器
docker run -d --name mycontainer -p 8030:8030 mallapp
容器基本关闭,启动,删除操作见上一章博客【Docker入门 三】container 容器命令 https://www.cnblogs.com/CharmCode/p/13276751.html