CentOS下安装Docker

Docker

必须要在Linux环境下才能运行,windows下运行也是安装虚拟机后才能下载安装运行,菜鸟教程

下载安装

linux 依次执行下边步骤

  • 更新 yum yum update

  • 卸载旧的Docker

    yum remove docker

    docker-client

    docker-client-latest

    docker-common

    docker-latest

    docker-latest-logrotate

    docker-logrotate

    docker-engine

  • 安装必要的工具 yum install -y yum-utils device-mapper-persistent-data lvm2

  • 配置镜像地址yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

  • 安装 yum install docker-ce

  • docker -v 查看版本

  • docker info 查看信息

  • 打开阿里云,登录,控制台,镜像服务,有安装 相关步骤。

  • 镜像仓库配置,官方是https://hub.docker.com/

    我们可以配置阿里云的镜像加速器

  • sudo systemctl daemon-reload 重新加载镜像配置

  • sudo systemctl restart docker 启动docker 适用于centos环境

当执行 docker ps 命令时会有权限不足的问题,必须得加 sudo 权限,我们可以按照以下命名解决

shell 复制代码
sudo groupadd docker
sudo usermod -aG docker $USER #此处的USER是系统变量,直接使用该语句即可
# 切换当前用户组为Docker用户组,会以新的shell 去执行,所以需要每次都切换
newgrp docker

镜像

镜像下载版本可以在https://hub.docker.com中搜索

  • docker images 查看已有镜像
  • docker search redis 在仓库中搜索镜像
  • docker pull redis:5.0 下载镜像 镜像名:版本号
  • docker rmi image id 删除镜像
  • docker rmi 镜像名:版本号 删除镜像
  • docker images -q 查看所有镜像的ID
  • docker rmi docker images -q 把所有有镜像的ID 当作参数传入rmi命令,删除所有镜像

容器

可以通过镜像创建容器

  • docker run -i -t --name MyCentOS centos:7 /bin/bash 使用centos创建一个名字为MyCentOS的容器,并且直接进入到命令行 -i: 交互式操作,允许对容器内的终端进行交互。-t: 在容器内创建新终端。/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。通过-i -t 创建的容器,创建完成皇后会直接进入到容器,退出后容器直接关闭
  • exit 退出容器
  • docker ps 查看当前正在运行的容器
  • docker ps -a 查看所有容器
  • docker run -i -d --name CentOS centos:7 创建容器,并在后台运行
  • docker exec -i -t CentOS /bin/bash 进入容器
  • docker stop 容器名 停止容器
  • docker start 容器名
  • docker rm 容器名或容器ID 删除容器
  • docker inspect 容器名 查看容器信息

数据卷

相当于是一个文件系统(磁盘),可以挂载到容器中,宿主机中,用于文件的交换

  • docker run -i -t --name=MyCentOS -v /root/data:/root/data_container centos:7 /bin/bash
    • /root/data 宿主机的目录,没有则会创建
    • /root/data_container 代表容器的目录,没有会自动创建

数据卷容器

  • docker run -i -t --name=MyCentOS -v /root/data centos:7 /bin/bash

安装Mysql

docker run -p 3306:3306 --name mysql

-v $pwd/conf:/etc/mysql/conf.d \ -v $pwd/logs:/etc/logs

-v $pwd/data:/var/lib/mysql

-e MYSQL_ROOT_PSSWORD=root

-e MYSQL_ALLOW_EMPTY_PASSWORD=root

-e MYSQL_RANDOM_ROOT_PASSWORD=root

8.0版本的Mysql要加如下命令

docker run -p 3306:3306 --name mysql -v $pwd/conf:/etc/mysql/conf.d -v $pwd/logs:/etc/logs -v $pwd/data:/var/lib/mysql -e MYSQL_ROOT_PSSWORD=root -e MYSQL_ALLOW_EMPTY_PASSWORD=root -e MYSQL_RANDOM_ROOT_PASSWORD=root mysql bash

进入容器

docker exec -i -t mysql bash

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

进入配置文件修改跳过密码

卸载Docker

bash 复制代码
yum remove docker \
          docker-client \
          docker-client-latest \
          docker-common \
          docker-latest \
          docker-latest-logrotate \
          docker-logrotate \
          docker-engine
相关推荐
BullSmall7 分钟前
Sonarqube9.9 docker 镜像启动后 conf 下的配置文件没有了
docker·容器·eureka
ruofu3313 分钟前
wsl端是py312,但是项目是py311, 如何下载py311的依赖包(wheels)
python·docker
spider_xcxc1 小时前
Docker 实战:容器化多服务应用,Dockerfile 与 Compose 配置全解析
docker·云原生·eureka·虚拟化·容器化
晚风吹长发2 小时前
Docker使用——Docker容器及相关命令
linux·运维·服务器·docker·容器·架构
ShiXZ2132 小时前
Docker Compose 安装与配置指南
运维·docker·容器
BullSmall3 小时前
Anolis OS 8.10 Docker 部署 SonarQube 9.9 完整教程
运维·docker·容器
java_logo7 小时前
Apache Doris Docker 部署指南:实时分析数据库实战
数据库·docker·apache·doris·apache doris·轩辕镜像·docker部署doris
生活爱好者!20 小时前
我把NAS当作下载机,docker一键部署qb
运维·docker·容器
java_logo20 小时前
Docker Compose 部署 ClickHouse:快速搭建高性能列式数据库
数据库·clickhouse·docker·列式数据库·轩辕镜像·高性能数据库·clickhouse部署教程
MC皮蛋侠客20 小时前
uv 系列(七):CI/CD、Docker 与私有索引——生产级交付
python·ci/cd·docker·uv