Docker命令实战_docker hub commands,你们觉得作为一名程序员最大的悲哀是什么

94 阅读6分钟
docker ps

 ​4. 查看docker运行的和停止的容器

docker ps -a

 5.删除(docker rmdocker )

# 删除停止的容器
docker rm  容器id/名字
# 强制删除正在运行中的
docker rm -f mynginx   

 ​​​6.补充

# 如果才开始没有设置开机自启怎么办?更新一下设置项
docker update 容器id/名字 --restart=always

3. 修改容器内容:修改默认的index.html 页面

方法1:进入到容器里去修改

1.通过公网IP192.168.2.129,88端口去访问nginx

2.  修改默认的index.html 页面

进入容器内部修改

# 进入容器内部的系统,修改容器内容
docker exec -it 容器id  /bin/bash
  # -it表示已交互模式进入容器
  #  /bin/bash 进入容器的bash控制台(相当于linux下的另一个小型linux环境)

cd /usr/share/nginx/html #然后ls,里面有一个index.html
echo "<h1>Welcome to China</h1>"  > index.html #<h1></h1>表示标题
# 改好页面以后,exit就可以退出!

通过公网IP192.168.2.129,88端口去访问nginx,就会发现页面修改成功

方法2:命令挂载:在主机外面修改

1.把容器里的目录与当前目录建立起链接

docker run --name=mynginx -d --restart=always -p  88:80 \
-v /data/html:/usr/share/nginx/html :ro nginx
# -v 后面表示把主机的目录挂载到容器里的目录,和端口的方式很相似;
# /data/html主机目录
# /usr/share/nginx/html容器目录 
# ro 表示容器里不能改,只能在容器外进行更改

 2.此时cd /data/html页面,ls里面什么都没有;因为主机是空的,容器也是空

3.然后进行追加修改,生成一个index.html页面

4.此时再去访问,也可以做到修改 

4.提交改变:将自己修改好的镜像提交

docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]

  1. 通过docker commit --help查看帮助文档

 2. 提交并设置 

 3. 生成一个新的镜像zlnginx

 4.以后访问页面,要想访问原来的页面,就启动原来的镜像nginx;要想访问新的页面就启动zlnginx镜像

5. 如何把修改好的镜像(zlnginx)传输到一台新的服务器?

方法1:打成压缩包

1.物理传输:打成压缩包

docker save -o zlnginx.tar zlnginx:v1
# -o 表示指定的压缩包名字,名字是以.tar结尾的压缩包文件

2.把压缩包传到机器上后,然后加载

docker load -i zlnginx.tar
# -i 表示后面跟的是要加载的镜像压缩包名

3.此时在docker images就可以看到zlnginx镜像了!

方法2:推送到远程仓库(docker hub),镜像推送

1.需要先注册登录docker hub

2. 创建一个仓库(create a Repository)

3.creat创建以后得到以下界面

4.根据提示,把新的镜像推送到仓库,注意要带上名字

4.1 先把旧镜像的名字,改成仓库要求的新版本名字

docker tag local-image:tagname new-repo:tagname
# local-image:tagname,本地的镜像和标签,这里就是:zlnginx和v1
#  new-repo:tagname,新的名字和版本号,例如:zznginx.v1

# 根据需要自己修改
docker tag zlnginx:v1 1870298479/zznginx:v1.0

 这时docker images就能查到1870298479/zznginx:v1镜像

4.2 进行推送

(1)在推送前先进行登录:

docker login

(2)然后会让你输入登录的账号密码: 

(3) 登上以后就可以进行推送

docker push 1870298479/zznginx:v1.0

 (4)推送完以后进行登出

 (5)再次回到docker hub页面就可以看到v1版本了

(6)点击复制,别的机器就可以直接下载使用了

docker pull 1870298479/zznginx:v1

6.补充常用命令

1.查看容器的运行日志

docker logs 容器名/id

2.进入到某个容器里

docker exec -it 容器id /bin/bash


![img](https://p9-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/2c51a335489b4fbe8a7d19c34946398d~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5py65Zmo5a2m5Lmg5LmL5b-DQUk=:q75.awebp?rk3s=f64ab15b&x-expires=1771262114&x-signature=7ieXtp7ynUejjAqTPBdJAlUoiAQ%3D)
![img](https://p9-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/8ed43ab71356418891c58d322cf0a5c1~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5py65Zmo5a2m5Lmg5LmL5b-DQUk=:q75.awebp?rk3s=f64ab15b&x-expires=1771262114&x-signature=jGpaOJ6iS%2B19eDdxGdyLQoZEPMc%3D)
![img](https://p9-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/8d0b502403414a58b79b961596e9284f~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5py65Zmo5a2m5Lmg5LmL5b-DQUk=:q75.awebp?rk3s=f64ab15b&x-expires=1771262114&x-signature=kygwMNazOGu1oYRd3TYZm5Jnd5c%3D)

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!**


**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化资料的朋友,可以戳这里获取](https://gitee.com/vip204888)**