在 linux 中 docker容器安装使用

快来打我* 2022-03-26 10:20 524阅读 0赞

docker 工作流程介绍

在这里插入图片描述
正如上图所示,当我们想运行一个容器的时候,docker会:
1、拉取镜像,若本地已经存在该镜像,则不用到网上去拉取
2、创建新的容器
3、分配union文件系统并且挂着一个可读写的层,任何修改容器的操作都会被记录在这个读写层上,你可以保存这些修改成新的镜像,也可以选择不保存,那么下次运行改镜像的时候所有修改操作都会被消除
4、分配网络\桥接接口,创建一个允许容器与本地主机通信的网络接口
5、设置ip地址,从池中寻找一个可用的ip地址附加到容器上,换句话说,localhost并不能访问到容器
6、运行你指定的程序
7、捕获并且提供应用输出,包括输入、输出、报错信息

一、配置安装 docker 源

  1. [root@docker ~]# cat /etc/yum.repos.d/docker.repo
  2. [dockerrepo]
  3. name=Docker Repository
  4. baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/
  5. enabled=1
  6. gpgcheck=1
  7. gpgkey=https://yum.dockerproject.org/gpg

二、安装 docker

  1. [root@docker ~]# yum install -y docker-engine
  2. [root@docker ~]# service docker start
  3. [root@docker ~]# systemctl enable docker
  4. [root@docker ~]# docker version (查看是否安装成功)

三、docker 的基本命令操作

  1. attach 运行正在运行的容器
  2. build Dockerfile构建一个映像
  3. commit 根据容器的更改创建新映像
  4. export 将容器的文件系统导出为 tar 归档文件
  5. images 查看镜像
  6. import tar 导入内容以创建文件系统映像
  7. kill 杀死一个或多个正在运行的容器
  8. load 导入 tar 镜像文件
  9. logs 获取容器日志
  10. port 列出端口映射或容器的特定映射
  11. ps 查看正在运行的容器
  12. pull 从注册表中提取镜像(下载)
  13. push 上传本地的镜像
  14. rename 重命名一个容器
  15. restart 重启容器
  16. rm 删除一个或多个容器
  17. rmi 删除一个或多个镜像
  18. run 在新容器中运行命令
  19. save 将一个或多个镜像保存到tar存档
  20. search Docker Hub中搜索镜像
  21. start 启动容器
  22. stats 实时监控容器的状态信息
  23. stop S停容器
  24. tag 创建一个引用SOURCE_IMAGE的标记TARGET_IMAGE
  25. top 显示容器的运行进程
  26. unpause 恢复一个或多个容器中的所有进程
  27. update 更新一个或多个容器的配置
  28. version 显示Docker版本信息
  29. wait 阻塞,直到一个或多个容器停止,然后打印它们的出口代码

1、查看 Docker 版本信息 (docker version images_name)

在这里插入图片描述

2、查找 Docker 镜像 (docker search images_name)

在这里插入图片描述

3、下载 Docker 镜像 (docker pull images_name)

在这里插入图片描述

4、删除 Docker 镜像(docker rmi images_name)

在这里插入图片描述

5、Docker 镜像的历史版本(docker history images_name)

在这里插入图片描述

6、上传 Docker 的镜像(docker push images_name)

在这里插入图片描述

7、进入(docker attach name)

在这里插入图片描述

8、导出保存镜像(docker export images_number > name.tar)

在这里插入图片描述

9、导入镜像快照(cat name.tar | docker import - name:version number)

在这里插入图片描述

10、创建一个新的镜像标记(docker tag IMAGEID name:version number)

在这里插入图片描述

四、创建 docker 容器

1、下载镜像: docker pull centos (或 docker.io/centos)

  1. 查看镜像: docker images
  2. [root@docker ~]# docker images
  3. REPOSITORY TAG IMAGE ID CREATED SIZE
  4. docker.io/mysql latest 2dd01afbe8df 2 weeks ago 485 MB
  5. docker.io/centos latest 75835a67d134 4 weeks ago 200 MB

2、创建docker:docker run -itp 80:8080 —name centos docker.io/centos /bin/bash
(创建名字为 centos 的 docker容器,将本机的 80 端口映射到容器中为 8080,并放在后台运行)

  1. -i, --interactive 保持STDIN开放,即使没有连接
  2. -t, --tty 分配一个pseudo-TTY
  3. -v, --volume list 绑定安装卷
  4. -p, --publish list 将容器的端口发布到主机
  5. -P, --publish-all 将所有公开的端口发布到随机端口
  6. -d, --detach 在后台运行容器并打印容器ID

五、数据持久化保存

1、创建:挂载卷-v
把物理机的 /data 目录挂载到容器 cen2 的 /tpm/data 目录下(可避免容器的数据丢失)

  1. [root@docker ~]# docker run -it --name cen2 -v /data/:/tmp/data docker.io/centos /bin/bash
  2. [root@f79a9974767d ~]# cd /mnt/data/
  3. [root@f79a9974767d ~]# touch {1..5}.mp4 ctrl+p+q 退出容器,并未停止容器)
  4. [root@docker ~]# ls /data
  5. 1.mp4 2.mp4 3.mp4 4.mp4 5.mp4

2、创建:容器卷–volumes-from
在多个容器下,数据同步,把 cen2 的卷挂载到 cen3 下(数据统一化)

  1. [root@docker data]# docker run -ti --name cen3 --volumes-from cen2 centos /bin/bash
  2. [root@405362b535ec /]# cd /tmp/data/
  3. [root@405362b535ec data]# ls
  4. 1.mp4 2.mp4 3.mp4 4.mp4 5.mp4

发表评论

表情:
评论列表 (有 0 条评论,524人围观)

还没有评论,来说两句吧...

相关阅读