Docker(Centos7+)

先确定是否 Centos 7 及以上的版本

查看是否 ping 通外网

linux

centos7运行下面的代码,基本上都可以正常安装

复制代码
# 删除之前的docker残留
yum -y remove docker*

yum install -y yum-utils

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

yum install docker-ce docker-ce-cli containerd.io -y
# 启动docker
systemctl start docker
# 开机启动
systemctl enable docker

配置镜像源

windows下

复制代码
{
  "registry-mirrors": [
    "http://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://cr.console.aliyun.com",
    "https://mirror.ccs.tencentyun.com"
  ]
}

linux下

创建文件

vim /etc/docker/daemon.json

把上面的镜像源放里面⬆️

复制代码
重新加载
systemctl daemon-reload
重启docker
systemctl restart docker

cat /etc/docker/daemon.json

如果 daemon.json 文件中配置了镜像源,它可能会看起来像这样:

复制代码
{  
  "registry-mirrors": ["https://mirror.example.com"]  
}

不是所有的 Docker 安装都会使用 daemon.json 文件来配置镜像源。有些情况下,镜像源可能是通过 Docker 命令行的 --registry-mirror 参数来指定的,但这通常是在启动 Docker 守护进程时指定的,而不是在运行时。

镜像的基本操作

帮助命令

  • docker version : 查看 Docker 版本信息
  • docker info : 查看 Docker 信息
  • docker --help : 查看帮助信息

拉取nginx镜像

复制代码
[root@yanmk ~]# docker pull image_name:tag

检索镜像

复制代码
docker search image_name:tag

列表

复制代码
docker images

[root@yanmk ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
nginx        latest    e784f4560448   3 weeks ago   188MB

删除镜像

复制代码
docker rmi image_id

相同名称的镜像可以存在多个,即需要不同的tags版本

运行一个容器

复制代码
[root@yanmk ~]# docker run -d -p 8899:80 nginx
#-p 8899:80 将容器的80端口映射到宿主机的8899端口
759dd109e0c3e05d588ca922ca6171c1173187bb71667ac104c17cbcb68236d0

前提 : 有镜像才能创建容器, 可以先下载一个: docker pull nginx

  • 格式 : docker run [参数] [镜像名称 / 镜像 ID] [执行的命令(默认执行指定的命令)]
  • 参数:

|------------|--------------------------------------|
| -d | 以守护进程的方式运行 |
| -p | 指定端口映射(格式:宿主主机端口: 容器向外暴露的端口) |
| -P | 随机端口映射 |
| --name | 指定容器的名称(同一台宿主主机上的 docker 名称不能重复) |
| --rm | 当一个容器结束了它的生命周期,就立即删除 |
| -v | 映射存储卷(可以映射文件及文件夹) |
| -i | 打开标准输出(通常与 t 连用) |
| -t | 创建一个伪终端 |
| -e | 在容器内设置一个环境变量 |

  • 示例

    "-d","-p"
    docker run -d -p 8899:80 nginx:1.19.2
    "-P"
    docker run -d -P nginx:1.19.2
    "--name"
    docker run -d --name nginx_name -P nginx:1.19.2
    "--rm"
    docker run -d --rm --name nginx_rm nginx:1.19.2
    "-v"
    docker run -d -v /root/test:/usr/share/nginx/html nginx:1.19.2
    "-e"
    docker run -d -e NGINX_NAME=nginx nginx:1.19.2

  • 本地查看

  • 浏览器查看

ps : docker 当中至少有一个应用程序运行在前台

列出当前所有正在运行的容器

复制代码
docker ps

Docker Compose

Docker Compose简化容器化应用程序的部署和管理过程的工具

相关推荐
爱敲代码的憨仔4 分钟前
分布式协同自动化办公系统-工作流引擎-流程设计
java·flowable·oa
纪元A梦28 分钟前
分布式拜占庭容错算法——PBFT算法深度解析
java·分布式·算法
卿着飞翔30 分钟前
RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)
java·rabbitmq·java-rabbitmq
陈阿土i1 小时前
SpringAI 1.0.0 正式版——利用Redis存储会话(ChatMemory)
java·redis·ai·springai
安全系统学习1 小时前
【网络安全】Qt免杀样本分析
java·网络·安全·web安全·系统安全
背太阳的牧羊人1 小时前
sudo docker exec -it backend bash 以交互方式(interactive)进入正在运行的 Docker 容器的命令行环境
docker·容器·bash
SoFlu软件机器人1 小时前
智能生成完整 Java 后端架构,告别手动编写 ControllerServiceDao
java·开发语言·架构
gsls2008082 小时前
ocrapi服务docker镜像使用
运维·docker·容器
写bug写bug2 小时前
如何正确地对接口进行防御式编程
java·后端·代码规范