当前位置: 首页 > news >正文

Docker学习

Docker

在这里插入图片描述

文章目录

  • Docker
    • 一、下载docker
    • 二、配置镜像
    • 三、基本操作
      • 3.1 查看官方库,下载,查看本地镜像
      • 3.2 启动容器
      • 3.2.1 指令总览
      • 3.2.2 端口映射
      • 3.2.3 exec详解
      • 3.2.4 挂载目录
      • 3.2.5 卷映射
    • 四、保存镜像文件
      • 4.1 提交
      • 4.2 保存
      • 4.3 加载
    • 五、分享社区
      • 5.1 登录
      • 5.2 命令
      • 5.3 推送
    • 六、docker网络
      • 6.1 查看ip
      • 6.2 创建自定义网络
      • 6.3 容器加入自定义网络
    • 暂时到这

一、下载docker

参考网址:https://www.runoob.com/docker/docker-mirror-acceleration.html

尚硅谷教学视频:https://www.bilibili.com/video/BV1Zn4y1X7AZ/?spm_id_from=333.337.search-card.all.click

我是在虚拟机上练习的,尚硅谷视频在云服务器上演示,不影响。

二、配置镜像

Linux终端运行下面的命令

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://dockerproxy.com","https://hub-mirror.c.163.com","https://mirror.baidubce.com","https://ccr.ccs.tencentyun.com"]
}
EOF

完成后,重启docker

sudo systemctl daemon-reload
systemctl restart docker

检查配置是否生效:

docker info

在这里插入图片描述

三、基本操作

3.1 查看官方库,下载,查看本地镜像

docker search nginx
docker pull nginx
docker images

在这里插入图片描述

3.2 启动容器

3.2.1 指令总览

运行docker run
查看docker ps
停止docker stop
启动docker start
重启docker restart
状态docker stats
日志docker logs
进入docker exec
删除容器(镜像)docker rm(rmi)
查看日志docker logs images/id
退出exit

3.2.2 端口映射

(1)

docker run -d --name mynginx nginx

在这里插入图片描述

-d: 后台启动

–name:自命名

docker run -d --name mynginx -p 80:80 nginx

-p:端口映射 本机:容器

注意:

如果要访问nginx界面,用http协议而不是https

3.2.3 exec详解

(1)

docker exec -it mynginx /bin/bash

-it:交互模式

/bin/bash:bash控制台交互

在这里插入图片描述

(2)echo语句修改文件

在这里插入图片描述

在这里插入图片描述

3.2.4 挂载目录

docker run -d -p 80:80 -v /app/nghtml:/usr/share/nginx/html --name app01 nginx

在这里插入图片描述

缺点:不能挂载配置文件目录,因为刚挂载是目录为空,导致容器配置文件缺失停止。

解决办法:卷映射

3.2.5 卷映射

-v 卷名:/目录

-v ngconf:/etc/nginx

完整命令:

docker run -d -p 80:80 -v /app/nghtml:/usr/share/nginx/html -v ngconf:/etc/nginx --name app01 nginx

卷的位置是docker默认的

/var/lib/docker/volume/ngconf(卷名)

四、保存镜像文件

4.1 提交

docker commit -m "提交信息" mynginx mynginx:v1.0

前一个mynginx是提交的对象,最后一个mynginx是镜像名字:标签

在这里插入图片描述

4.2 保存

将镜像保存为一个文件

docker save -o mynginx.tar mynginx:v1.0

-o:镜像写出成一个文件

在这里插入图片描述

4.3 加载

docker load -i mynginx.tar

在这里插入图片描述

五、分享社区

5.1 登录

进入dockerhub官网:https://hub.docker.com/

docker login

5.2 命令

(1)改名,原来的镜像名字没有用户名

docker tag mynginx:v1.0 zpyai/mynginx:v1.0

在这里插入图片描述

5.3 推送

docker push zpyai/mynginx:v1.0

在这里插入图片描述

在这里插入图片描述

六、docker网络

6.1 查看ip

使用容器ip+容器端口互相访问

(1)ifconfig查看网卡

l%5CTemp%5CQQ_1751018451531.png&pos_id=img-B04vBugY-1751019665385)

(2)查看细节

docker container inspect app01

在这里插入图片描述

6.2 创建自定义网络

加入自定义网络的容器,其名字就相当于域名

docker network create mynet

参数:

在这里插入图片描述

运行结果:

在这里插入图片描述

6.3 容器加入自定义网络

docker run -d -p 80:80 --name app1 --network mynet nginx
docker run -d -p 99:80 --name app2 --network mynet nginx

此时,可以进入容器app1访问app2的域名

docker exec -it app1 bash
curl http://app2:99

]

6.3 容器加入自定义网络

docker run -d -p 80:80 --name app1 --network mynet nginx
docker run -d -p 99:80 --name app2 --network mynet nginx

此时,可以进入容器app1访问app2的域名

docker exec -it app1 bash
curl http://app2:99

暂时到这

http://www.lqws.cn/news/542701.html

相关文章:

  • Gitee 持续集成与交付(CI/CD)篇
  • IBW 2025: CertiK首席商务官出席,探讨AI与Web3融合带来的安全挑战
  • 线上问题之-OOM排查记
  • 【Docker基础】Docker容器管理:docker ps及其参数详解
  • RAG 多段检索 + 多段拼接 + Encoder 与 Decoder 原理详解
  • C++11 lambda
  • 【C++】命令模式
  • iOS App 上架常见问题解决方案:六大难点与实战工具分工详解
  • MCP-安全(代码实例)
  • 鸿蒙OH南向开发 小型系统内核(LiteOS-A)【文件系统】上
  • Web基础关键_003_CSS(一)
  • 3.web逆向之开发者工具调试
  • Guava Cache 本地项目缓存
  • JDBC 工具类:1.0到3.0版本
  • leetcode 295. 数据流的中位数
  • element-plus限制日期可选范围(这里以7天为例)
  • Unity 脚本自动添加头部注释
  • Qwen VLo :一个多模态统一理解与生成模型
  • 在shell中直接调用使用R
  • 【容器】容器平台初探 - k8s整体架构
  • RJ45 以太网与 5G 的原理解析及区别
  • swagger访问不了的解决方案 http://localhost:8080/swagger-ui/index.html
  • 可编辑37页PPT | 数字化转型咨询规划方案
  • Mysql Mybatis批量插入和批量更新数据
  • 设计模式 | 适配器模式
  • LaTeX下载与实践入门指南
  • 在 Dev Container 中实现 GUI 开发的解决方案
  • 报表控件stimulsoft教程:在报表、仪表板和 PDF 表单自动生成缩略图
  • SQL Server 中 GO 的作用
  • mPaaS 客户端诊断概述