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简化容器化应用程序的部署和管理过程的工具

相关推荐
CryptoRzz6 分钟前
日本股票 API 对接实战指南(实时行情与 IPO 专题)
java·开发语言·python·区块链·maven
程序员水自流8 分钟前
MySQL数据库自带系统数据库功能介绍
java·数据库·mysql·oracle
谷哥的小弟13 分钟前
Spring Framework源码解析——RequestContext
java·后端·spring·框架·源码
天远Date Lab18 分钟前
Java微服务实战:聚合型“全能小微企业报告”接口的调用与数据清洗
java·大数据·python·微服务
lizz3123 分钟前
C++操作符重载深度解析
java·c++·算法
武子康23 分钟前
Java-205 RabbitMQ 工作模式实战:Work Queue 负载均衡 + fanout 发布订阅(手动ACK/QoS/临时队列)
java·性能优化·消息队列·系统架构·rabbitmq·java-rabbitmq·mq
CodeCraft Studio24 分钟前
Vaadin 25 正式发布:回归标准Java Web,让企业级开发更简单、更高效
java·开发语言·前端·vaadin·java web 框架·纯java前端框架·企业级java ui框架
Haoea!35 分钟前
JDK21新特性-序列集合
java
快乐非自愿44 分钟前
Java函数式接口——渐进式学习
java·开发语言·学习
卡布叻_星星1 小时前
Docker之Windows与Linux不同架构部署理解
linux·windows·docker