通过dockerfile从一个已知基础镜像开始构建,并指定一组有限的简单命令;
创建一个dockertest目录,在其下创建一个Dockerfile文件,文件内容如下:
# 1. 定义基础镜像
FROM node
# 2. 声明维护人员
MAINTAINER [email protected]
# 3. 克隆todoapp代码
RUN git clone -q https://github.com/docker-in-practive/todo.git
# 4. 移动到新的克隆目录
WORKDIR todo
扫描二维码关注公众号,回复:
4603602 查看本文章
# 5. 运行node包管理器的安装命令
RUN npm install > /dev/null
# 6. 指定从所构建的镜像启动的容器需要监听的端口
EXPOSE 8000
# 7. 指定在启动时需要运行的命令
CMD ["npm","start"]
从dockerfile构建docker镜像
docker build .
为新构建的docker镜像打标签
docker tag 7a553e9029f8 todoapp
运行docker容器
docker run -p 8000:8000 --name example1 todoapp
说明:-p将容器的8000端口映射到宿主机的8000端口上,--name给容器赋予一个唯一的名字,最后一个参数是镜像
Ctrl+C:终止进程和容器
docker ps -a
查看已启动和移除的容器,以及其ID和状态
docker start example1
重新启动容器,这次是后台启动
docker diff example1
显示自镜像被实例化成一个容器以来哪些文件受到影响