centos7 安装docker
卸载docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
安装依赖库
$ sudo yum install -y yum-utils
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
检查库中可以安装的版本
指定版本安装
yum install docker-ce-18.06.3.ce-3.el7 docker-ce-cli-18.06.3.ce-3.el7 containerd.io
安装最新版本的docker
$ sudo yum install docker-ce docker-ce-cli containerd.io
完成
启动
$ sudo systemctl start docker
设置docker开机自启动
$ sudo systemctl enable docker
2. 配置镜像加速器
针对Docker客户端版本大于 1.10.0 的用户
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://mdp6e4fh.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
4 检查镜像
sudo docker images
下载mysql
$ sudo docker pull mysql:5.7
切换root 用户
mysql镜像启动命令
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=7059 \
-d mysql:5.7
上面 -v表示镜像挂载
docker run -p 3306:3306 --name mysql ;名字叫mysql 容器
的端口3306映射到主机3306
-v /mydata/mysql/conf:/etc/mysql \ 将配置文件夹挂在到主机
docker run -p 3306:3306 --name mysql \ 将日志文件夹挂载到主机
-v /mydata/mysql/data:/var/lib/mysql \ 将配置文件挂载到主机
-e MYSQL_ROOT_PASSWORD=root \ 设置用户名和密码
查看镜像
docker ps
进入mysql 镜像
docker exec -it mysql /bin/bash
检查MySQL安装在哪里
$ whereis mysql
将容器内部的mysql的log日志挂载在linux的文件夹中
/mydata/mysql/log
还有etc配置,mysql产生的data
修改mysql 配置文件
vi /mydata/mysql/conf/my.cnf
[client] default-character-set=utf8
[mysql] default-character-set=utf8
[mysqld] init_connect='SET collation_connection=utf8_unicode_ci' init_connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_unicode_ci skip-character-set-client-handshake skip-name-resolve
修改完my.cnf以后重启
docker restart mysql
进入mysql镜像
sudo docker exec -it mysql /bin/bash
重启失败查看日志
docker logs mysql
查看docker 中的进程
sudo docker ps -a
让docker 中的镜像自启动
sudo docker update redis --restart=always
进入docker 中的mysql
sudo docker exec -it mysql /bin/bash
修改mysql的密码
set password for root@localhost=password('xxxx');
mysql
mysql>GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY '7059' WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES;
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'xxxx';
redis配置
生成redis
拉取镜像
$ docker pull redis
然后创建目录结构
mkdir -p /mydata/redis/conf
进入上述文件目录
$ touch redis.cnf
然后运行这个命令外部就有redis,cnf了
docker run -p 6379:6379 --name redis -v /mydata/redis/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf
redis 持久化,在/mydata/redis/conf 下的redis.conf 中加入
appendonly yes
然后重启redis
docker restart redis
删除镜像
(1)首先查询容器ID
docker ps -a
(2)关闭容器
docker stop 容器ID
(3)删除容器
docker rm 容器ID
(4)查看镜像ID
docker images
(5)删除容器

浙公网安备 33010602011771号