美文网首页
docker 学习笔记(1)

docker 学习笔记(1)

作者: 9吧和9说9话 | 来源:发表于2019-11-30 13:21 被阅读0次

docker 是什么

应用容器引擎,基于GO编写。

特点:

  • 高效、快速、小巧
  • docker是C/S架构, 所以需要启动docker服务 才能使用docker其他的命令

docker架构

镜像(image),容器(container),仓库(registry)
image: 应用程序及其依赖(依赖包和依赖环境)
container:image的运行实例
registry:image仓库

  1. 镜像

怎么用

  1. 使用Dokcerfile 创建image(基于registry中其他同学的image 扩展自己的image)
docker image build -t ${image-name} ${your_dockerfile_path}
  1. 运行image 创建container
docker container run -p 3000:8080 -it ${image-name} /bin/bash
  • -p参数:容器的 3000 端口映射到本机的 8000 端口。
  • -it参数:容器的 Shell 映射到当前的 Shell,然后你在本机窗口输入的命令,就会传入容器。
  • ${image-name} image文件的名字(如果有标签,还需要提供标签,默认是 latest 标签)。
  • /bin/bash:容器启动以后,内部第一个执行的命令。这里是启动 Bash,保证用户可以使用 Shell。

dockerfile

# 依赖的image镜像
FROM node:8.4
# 拷贝当前目录下所有文件到 容器中指定目录
COPY . /app
# 切换到容器中的指定目录
WORKDIR /app
# 执行shell命令
RUN npm install --registry=https://registry.npm.taobao.org
# 暴露7001 端口 允许外部访问
EXPOSE 7001
# 要执行的shell命令
CMD npm run dev
  • RUN 和 CMD的区别:
    1. RUN 在启动container阶段使用,CMD 在container运行之后 使用,
    2. CMD只能有一个
  1. 注意,指定了CMD命令以后,docker container run命令就不能附加命令了(比如前面的/bin/bash),否则它会覆盖CMD命令

参考:

  1. 阮一峰老师的教程

相关文章

网友评论

      本文标题:docker 学习笔记(1)

      本文链接:https://www.haomeiwen.com/subject/cacowctx.html