docker笔记
创始人
2024-12-18 22:04:24
0

在这里插入图片描述

docker安装
不知道为什么docker官网没有centos的文档了。。。

# 移除旧版本 yum remove docker*  # docker必须安装的一些必备的工具 yum install -y yum-utils  # 配置docker yum源地址 yum-config-manager \     --add-repo \     https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

docker分为两个版本,,一个是ce:社区版本 ,一个是ee :企业版

#安装最新版本docker ... docker-ce是社区版 ,docker-ce-cli:docker的客户端 #我们发的命令就是在客户端发的,客户端发送到 docker-daemon服务端,服务端再根据收到的命令调用docker内部接口。。。  containerd.io : Docker 使用的一个核心组件,它是一个容器运行时接口(CRI)的实现 yum install docker-ce docker-ce-cli containerd.io    # 展示docker-ce的yum源 yum list docker-ce --showduplicates | sort -r  # 安装指定版本的docker yum install docker-ce-3:19.03.14-3.el8.x86_64 ... 还有docker-ce-cli指定版本,, containerd.io ,, 我安装docker-ce-cli-xxx提示版本找不到 如果只指定docker-ce版本,,docker-ce-cli会用最新版本  # 查看版本 docker version 

在这里插入图片描述
docker常用命令:

systemctl start docker # 开启启动 systemctl enable docker 

docker配置阿里云镜像加速地址: 打开阿里云官网,搜索容器镜像服务,,将里面的脚本执行一遍,,这个脚本就会将阿里云镜像加速地址配置到/etc/docker/daemon.json中,,这个文件是docker的核心配置文件

docker images docker image ls docker pull docker pull redis:latest # 删除镜像,, 如果镜像有容器存在,删除不掉。 -f强制删除, docker rmi redis:latest  docker ps -a  docker rmi --help docker rmi -f $(docker images -aq)  # 移除游离镜像,, 比如说在将容器commit成一个镜像的时候,,重复commit,后面的会把前面的覆盖掉,而前面的变成了没有名字的游离镜像 docker image prune  # image复制并且命名 docker tag 原镜像:标签 新镜像:标签 

容器的状态:

  • up:运行中
  • create : 已创建
  • pause : 暂停
  • exited : 退出
# 创建容器 docker create 镜像名字 docker create [控制项] 镜像名 启动命令[启动参数]  docker create -p 主机端口:容器端口  -P : 随机端口  #暂停容器 docker pause  #恢复暂停 docker unpause  # 优雅的停止 docker stop # 强制退出 docker kill  # 一个容器可以映射多个 主机端口 docker run -p 6379:6379 -p 8888:6379 redis  # 打印日志 docker logs # 日志follow docker logs -f  # 绑定容器控制台 docker attach   docker exec  	-i : 交互模式 interactive  	-t : tty 重新开启一个终端  	-u : 以哪一种用户身份进去    # 以0号用户,0号组进去,,也就是root  docker exec -it -u 0:0  mynginx /bin/bash # --privileged 最高权限进去 docker exec -it --privileged mynginx /bin/bash # 进去之后控制台输入id,, 查看uid:用户ID,gid :用户组ID,groups 用户所属的其他用户组。    # 查看状态 docker inspect docker inspect images  # 拷贝内容 docker cp # 复制index.html  到 mynginx容器里面的  /usr/share/nginx/html   目录下: 如果这个不是目录,,不会自动创建目录,而是直接拷贝 docker cp index.html mynginx:/usr/share/nginx/html # 将容器总的文件复制到 虚拟机中 docker cp mynginx:/etc/nginx/nginx.conf nginx.conf   # 比较容器和最开始镜像生成的容器有什么不同,,  检查容器的 增删改 docker diff D: delete.  C : change. A:add  # 修改了容器之后,可以将容器变成一个新的镜像 docker commit # -a :作者是谁 -m:提交的message       容器名字。  镜像名字:标签 docker commit -a waterkid -m "first" mynginx waterkid:v1  当容器发生变化之后,如果我们后来还要以新的容器为准,就需要提交一个镜像,,多次提交,会覆盖掉之前提交的镜像,,之前的镜像会变成游离镜像,,docker image prune 清除   

将镜像放在docker hub 中:
需要在docker hub 上注册一个账号,镜像名就是仓库名,,,
docker hub中一个完整官方镜像的全路径是 docker.io/library/redis:alpine
我们的镜像是将中间的library变成自己的用户名
docker.io/waterkid01/mynginx:v1

官方的镜像名字,,前面不需要带用户名,,而自己写的镜像,需要带自己的用户名,如果要上传到docker hub中的话,,
在这里插入图片描述
首先需要将镜像改成waterkid01/mynginx

docker tag waterkid:v1  waterkid01/mynginx:v1  # 登录docker hub docker login  # 推送 docker push waterkid01/mynginx:v1 

我的推送总是重试,,

docker导入导出,有两种方式:
第一种是将容器变成tar,, docker export,,,docker import
第二种是将镜像变成tar。。。 docker save,,, docker load

# 将 nginx01容器 ===》 nginx.tar   -o :output docker export -o nginx.tar nginx01  # 将tar变成镜像 docker import nginx.tar mynginx:v6  这样生成的镜像,,直接启动容器是不行的,,缺少启动命令。。需要查看之前容器的启动命令 docker inspect nginx01   

在这里插入图片描述

# 不截断输出,也可以看到启动命令 docker ps --no-trunc  运行import导入的镜像,,需要将原来容器的启动命令,,加在这个启动容器后面 docker run -P mynginx:v6 /docker-entrypoint.sh nginx -g 'daemon off;' 
# 将镜像保存成tar  ,,可以是多个镜像 docker save -o waterkid.tar waterkid:v1 # 将tar导出为镜像 docker load -i waterkid.tar 

每一个镜像,一启动都会有镜像默认干的活,,,在cmd中


从0到1制作镜像
编写Dockerfile

 from busybox CMD ping baidu.com 
# 自己做一个镜像 ,打包成mybusy:v6镜像  -f:指定是那个Dockerfile  ./ 这里面的所有操作都是在 ./ 这个路径下执行 docker build -t mybusy:v6 -f Dockerfile ./ 

相关内容

热门资讯

透视辅助"约局吧怎么... 透视辅助"约局吧怎么看有没有挂"本来真的是有挂(透视)必胜教程(有挂详情);1、该软件可以轻松地帮助...
透视软件!hhpoker辅助软... 透视软件!hhpoker辅助软件,都是有挂(透视)线上教程(有挂方法)1、该软件可以轻松地帮助玩家将...
透视好牌(WePoKer)we... 透视好牌(WePoKer)wepoker辅助器下载(透视)一直真的有挂(德州教程);1、下载好wep...
透视真的!aapoker辅助器... 透视真的!aapoker辅助器是真的吗(透视)真的假的(切实存在有挂)1、aapoker辅助器是真的...
透视软件"wepok... 透视软件"wepoker是不是有人用挂"真是真的是有挂(透视)新版2025教程(有挂方法);1.we...
透视辅助(WEPOKER)we... 透视辅助(WEPOKER)wepoker科技辅助器(透视)竟然是有挂(透明挂教程)1)wepoker...
透视真的!hhpoker到底可... 透视真的!hhpoker到底可以作弊吗,好像是真的有挂(透视)揭秘教程(有挂介绍);1、hhpoke...
透视好友房!aapoker真的... 透视好友房!aapoker真的假的(透视)插件下载(果然存在有挂);1、aapoker真的假的ai机...
透视挂"steamp... 透视挂"steampokermaster辅助"竟然有挂(透视)解说技巧(有挂详情)steampoke...
透视有挂(WePoKer)we... 透视有挂(WePoKer)we-poker正规吗(透视)总是有挂(安装教程);1、下载好we-pok...