Py学习  »  docker

是时候Docker: 3 Docker小实例

锐玩道 • 4 年前 • 422 次点击  
阅读 40

是时候Docker: 3 Docker小实例

Docker小实例

原文再续,就书接上一回。今天我们说说Docker镜像容器的相关操作

目录

  1. 是时候Docker: 1 Docker导学
  2. 是时候Docker: 2 安装并取消sudo执行docker
  3. 是时候Docker: 3 Docker小实例
  4. 是时候Docker: 4 Dockerfile创建镜像
  5. 待续。。。

创建文件

vim index.html

<html>
<h1>docker is fun!</h1>
</html>
复制代码

部署Nginx

// -p 8081:80  8081 映射到 80 | -d 守护进程
docker run -d -p 8080:80 nginx   // 验证 curl http://127.0.0.1:8080

docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                  NAMES
19d1b0186d1a        nginx               "nginx -g 'daemon of…"   12 seconds ago      Up 11 seconds       0.0.0.0:8081->80/tcp   nginxserver
复制代码

复制文件到docker内

docker exec -it [CONTAINER ID] bash  // 用下面命令进入容器内部,查找nginx目录,
find . -name "nginx"                 // 将目前目录及其子目录下所有名称是 nginx 的文件列出来
exit                                 // 退出

docker cp index.html 19d1b0186d1a://usr/share/nginx/html
// 验证 curl http://127.0.0.1:8080
复制代码

保存容器内改动

docker commit -m 'add index.html2/usr/share/nginx/html' 19d1b0186d1a nginx-fun
// 返回:sha256:ddccfc4cb7bec3e81ffa580826096adb94b77c7b4e859521af32ad5fa68f9d5d

docker stop 19d1b0186d1a
docker run -d -p 8080:80 nginx-fun   // 验证 curl http://127.0.0.1:8080
复制代码

命令小结

命令 说明
docker pull 获取image
docker build 创建image
docker images 列出image
docker run [CONTAINER NAME] 运行container
docker container ls 列出正在运行container
docker container ls -a 列出所有container(终止状态的容器)
docker container stop [CONTAINER ID] 终止container
docker container logs 获取容器输出信息
docker ps 列出container
docker rm 删除container
docker rmi 删除image
docker exec -it [CONTAINER ID] bash 进入container内部执行命令;不建议使用docker attach命令会在exit时终止容器
docker cp [SOURCE PATH] [CONTAINER ID]:/[TARGET PATH] 复制文件到容器内部
docker commit -m '[MESSAGE]' [CONTAINER ID] [IMAGE NAME] 保存改动为新 image

更多内容下回分解

原创不易,如果你觉得我的文章对你有帮助,请点赞鼓励

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/46142
 
422 次点击