dockerfile ================== 基于dockerfile创建镜像 ----------------------- 使用docker build命令来创建新的docker镜像 1, 创建Dockerfile文件,然后进行编辑 :: From python Cmd python -m http.server * FROM 是指定基础镜像,它必须是第一条指令。这里使用python作为基础镜像。 * Cmd 表示镜像作为容器运行时运行的程序命令。 这里是启动了一个python的http.server模块。 2, build docker build -t zhang:1.0 . # 基于当前目录的Dockfile来创建镜像,镜像名称为zhang:v1 -t 表示给镜像命名 3, 运行容器进行验证 docker run -p 8000:8000 -it --rm zhang:v1 -p 端口进行映射, -it交互式模式, --rm 当容器结束后自动删除容器。 然后通过浏览器访问容器所在主机的8000端口,我这里地址为http://192.168.56.131:8000这样可以查看容器内的所有文件, 这个功能是由python的http.server模块提供的。 端口映射是通过iptables的DNAT来实现的,写入的规则为 :: -A DOCKER ! -i docker0 -p tcp -m tcp --dport 8000 -j DNAT --to-destination 172.17.0.3:8000 我们可以知道容器的内部IP为 172.17.0.3 , 通过docker exec -it 232d2ccf4ec9 /bin/bash命令进入 到docker查看,确实是172.17.0.3 在 Dockerfile 中使用 ENV 指令设置环境变量 ------------------------------------------- 环境变量设置格式有两种 : * ENV key1 value1 * ENV key1=value1 key2=value2 示例如下 :: ENV GOPROXY https://goproxy.cn