centos7安装docker

centos7安装docker,参考:(https://www.jb51.net/article/232534.htm)
参考:https://blog.csdn.net/weixin_38820905/article/details/134602434

1、御载以前的版本

yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate
dokcer-logrotate docker-engin

御载docker-ce(ce代表社区版)

yum remove docker-ce docker-ce-cli containerd.io

删除docker资源

rm -rf /var/lib/docker

2、安装依赖包

解决:Failed to download metadata for repo ‘appstream‘: Cannot prepare internal mirrorlist:…

问题解决:Failed to download metadata for repo ‘appstream‘: Cannot prepare internal mirrorlist:...
大家都知道Centos8于2021年年底停止了服务,大家再在使用yum源安装时候,出现下面错误“错误:Failed to download metadata for repo ‘AppStream’: Cannot prepare internal mirrorlist: No URLs in mirrorlist”

1、进入yum的repos目录

cd /etc/yum.repos.d/

2、修改所有的CentOS文件内容

sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*

sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
3、更新yum源为阿里镜像

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

yum clean all

yum makecache
4、
yum安装
测试是否可以yum安装

yum install wget –y
yum install -y yum-utils

3、设置镜仓库(默认是国外仓库,下载非常慢)

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

4、更新yum

yum makecache

5、安装docker

简单安装: 会安装最新的版本

// 查看仓库中的所有docker版本,可以自定义选择版本安装。
yum list docker-ce --showduplicates | sort -r


// 开始,以下两个方式,幸福二选一
方式1.默认稳定版
// 2021.07.13 更新,直接使用以下命令安装,该操作会默认安装最新稳定版docker,由于repo中默认只开启stable仓库
yum install docker-ce

方式2.选择版本安装
// 选择版本安装
yum install -y docker-ce-19.03.13

若报错 尝试(可用)
yum install -y --allowerasing docker-ce-19.03.13

// 结束


// 旧版(请勿执行,未确认是否可继续使用)
yum install docker-ce docker-ce-cli containerd.io -y

其他方法:

yum install docker-ce docker-ce-cli containerd.io

如果不想安装最新版本的docker,想安装指定版本,可以这样:

先查询出docker有哪些版本

yum list docker-ce --showduplicates | sort -r

安装指定版本

sudo yum install docker-ce-<version_string> docker-ce-cli-<version_string> containerd.io

比如,安装18.09.1版本:

sudo yum install docker-ce-18.09.1 docker-ce-cli-18.09.1 containerd.io

方式2.选择版本安装


// 选择版本安装
yum install -y docker-ce-19.03.13

6、启动docker

sudo systemctl start docker

查看是否启动成功

docker version

7、开机自动启动docker

systemctl enable docker

8、运行Hellow-world镜像

sudo docker run hellow-world

docker版本信息:
在这里插入图片描述
运行hello-world信息:

在这里插入图片描述

8、简单方法:

https://www.cnblogs.com/zqyo2000z/p/13723961.html

9、配置docker镜像加速器(目前没有用,被封了)

在阿里云控制台申请一个容器镜像服务,然后就会分配一个镜像加速器地址【https://qiby9901.mirror.aliyuncs.com】。

如果没有申请阿里云镜像加速器,就不要配置daemon.json文件了,加速器只能在阿里云服务器内网访问。

在/etc/docker 目录新建一个daemon.json文件。

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://qiyb9901.mirror.aliyuncs.com"
]
}
EOF

保存,重新加载配置文件与重启docker

sudo systemctl daemon-reload
sudo systemctl restart docker

10、安装docker可视化界面管理工具portainer

docker run -d -p 8090:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true
portainer/portainer

注意,docker容器端口必须是9000才能启动portainer

浏览器地址栏里输入:http://本机ip:8090 访问portainer。
镜像拉取失败解决:https://www.cnblogs.com/wang50902/p/11378202.html

docker镜像:

{
    "registry-mirrors": [
        "https://docker.1panel.live",
        "https://dockerhub.icu",
        "https://docker.aws19527.cn",
        "https://docker.anyhub.us.kg",
        "https://docker.m.daocloud.io"
    ]
}

运行docker mysql

参考地址:https://blog.csdn.net/cooldream2009/article/details/134610141

https://developer.aliyun.com/article/1503145

拉取镜像

docker pull mysql:5.7

命令解释:
mysql容器启动

docker run \
--name mysql5.7 \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=123456 \
-d \
-v ~/volumes/mysql5.7/data:/var/lib/mysql \
-v ~/volumes/mysql5.7/conf:/etc/mysql \
-v ~/volumes/mysql5.7/log:/var/log \
--restart=always mysql:5.7

  • docker run: 启动一个新容器
  • –name mysql5.7: 指定容器的名称为 mysql5.7
  • -p 3306:3306: 将容器的 3306 端口映射到宿主机的 3306 端口,允许通过该端口访问 MySQL 服务
  • -e MYSQL_ROOT_PASSWORD=123456: 设置 MySQL root 用户的密码为 123456
  • -d: 在后台运行容器
  • -v ~/volumes/mysql5.7/data:/var/lib/mysql: 将宿主机的 ~/volumes/mysql5.7/data 目录挂载到容器内的 MySQL 数据目录
  • -v ~/volumes/mysql5.7/conf:/etc/mysql: 将宿主机的 ~/volumes/mysql5.7/conf 目录挂载到容器内的 MySQL 配置文件目录
  • -v ~/volumes/mysql5.7/log:/var/log: 将宿主机的 ~/volumes/mysql5.7/log 目录挂载到容器内的 MySQL 日志目录
  • –restart=always: 设置容器遇到错误时自动重启
  • mysql:5.7: 使用 MySQL 5.7 版本的 Docker 镜像*

运行docker mysql命令:

docker run --name mysql5.7 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d \
-v /home/dockerv/mysql/data:/var/lib/mysql \
-v /home/dockerv/mysql/conf:/etc/mysql/conf.d \
-v /home/dockerv/mysql/log:/var/log \
--restart=always mysql:5.7

机器重启时自启动

docker update --restart=always mysql

查看运行状态:

[root@localhost ~]# docker ps
CONTAINER ID   IMAGE       COMMAND                   CREATED         STATUS         PORTS                               NAMES
89d5f3b506d9   mysql:5.7   "docker-entrypoint.s…"   2 minutes ago   Up 2 minutes   0.0.0.0:3306->3306/tcp, 33060/tcp   mysql5.7

查看所有的运行记录:

[root@localhost ~]# docker ps -a
CONTAINER ID   IMAGE         COMMAND                   CREATED          STATUS                      PORTS                               NAMES
89d5f3b506d9   mysql:5.7     "docker-entrypoint.s…"   3 minutes ago    Up 3 minutes                0.0.0.0:3306->3306/tcp, 33060/tcp   mysql5.7
4e8e92938245   mysql         "docker-entrypoint.s…"   34 minutes ago   Exited (1) 34 minutes ago                                       jovial_chandrasekhar
8a379aeb7909   hello-world   "/hello"                  38 minutes ago   Exited (0) 38 minutes ago                                       vibrant_hertz
28ffecfd007a   hello-world   "/hello"                  39 minutes ago   Exited (0) 39 minutes ago                                       focused_booth

可以删除之前的,命令:

# 删除mysql5.7
docker rm -f  mysql5.7

配置镜像:

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://io54qqa3.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

在这里插入图片描述

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值