安装docker
方式一.使用官方安装脚本自动安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
方式二.手动安装
#卸载旧版本
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
#安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
#设置yum源
#阿里云
yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#清华大学源
yum-config-manager \
--add-repo \
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
#安装最新版本的 Docker Engine-Community 和 containerd,或者转到下一步安装特定版本:
yum install docker-ce docker-ce-cli containerd.io -y
systemctl start docker
基本命令
service docker status
service docker stop
service docker start
#查看所有镜像
docker images
#查看所有运行的容器
docker ps -a
#删除容器
docker rm "CONTAINER ID"
#启动容器
docker start "CONTAINER ID"
#停止容器
docker stop "CONTAINER ID"
#进入容器
docker exec -it "CONTAINER ID" /bin/bash
#退出容器 返回宿主机
exit
#启动镜像
docker run
-p 3306:3306 #指定端口
--name mysql \ #命名
-v /docker/mysql/log:/var/log/mysql \ #挂载对应目录
-v /docker/mysql/data:/var/lib/mysql \
-v /docker/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123 \
-d mysql:5.7
#删除镜像(先停止并删除容器)
docker images;
docker rmi "IMAGE ID"
安装mysql
docker search mysql
#下载 安装 docker
docker pull mysql:5.7
# 先在主机目录下创建对应文件夹
mkdir -p /docker/mysql/log
mkdir -p /docker/mysql/data
mkdir -p /docker/mysql/conf
#授权
chmod -R 777 /docker/mysql/log
chmod -R 777 /docker/mysql/data
chmod -R 777 /docker/mysql/conf
#启动运行mysql镜像
docker run \
--name mysql \
-d \
-p 3306:3306 \
--restart unless-stopped \
-v /docker/mysql/log:/var/log/mysql \
-v /docker/mysql/data:/var/lib/mysql \
-v /docker/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123 \
mysql:5.7
参数说明
–name 镜像命名
-p 3306:3306 将容器的端口号3306映射到主机的3306端口号。
-v /docker/mysql/log:/var/log/mysql \ 将配置文件夹挂载到主机
-v /docker/mysql/data:/var/lib/mysql \ 将日志文件夹挂载到主机
-v /docker/mysql/conf:/etc/mysql \ 将配置文件夹挂载到主机
-e MYSQL_ROOT_PASSWORD=123 \ 初始化root的密码
如上图说明安装成功了
mysql运行报错
2022-08-28 14:09:26+00:00 [ERROR] [Entrypoint]: mysqld failed while attempting to check config
command was: mysqld --verbose --help --log-bin-index=/tmp/tmp.p2nYqfyhr1
mysqld: Can't read dir of '/etc/mysql/conf.d/' (Errcode: 2 - No such file or directory)
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!
1、删除存在的 mysql启动配置文件
sudo find / -name my.cnf --查找
rm $(find / -name my.cnf) --删除
2、删除原容器
docker rm 容器id
3、重新运行
docker run \
--name mysql \
-d \
-p 3306:3306 \
--restart unless-stopped \
-v /docker/mysql/log:/var/log/mysql \
-v /docker/mysql/data:/var/lib/mysql \
-v /docker/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123 \
mysql:5.7