下载、安装 Docker
centos 安装 docker 官方网址:https://docs.docker.com/engine/install/centos/
1、卸载已经安装的docker旧版本
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
2、设置 docker 镜像(阿里云镜像)
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、安装 docker
sudo yum install docker-ce docker-ce-cli containerd.io
4、启动 docker
sudo systemctl start docker
5、配置 docker 自启动
sudo systemctl enable docker
6、验证 docker 是否安装成功
配置 Dockers 镜像
这里使用的是 阿里云提供的镜像加速 ,登录并且设置密码之后在左侧的 Docker Hub 镜像站点 可以找到专属加速器地址,复制下来。
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-‘EOF‘
{
"registry-mirrors": ["你的加速器地址"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
Docker 常用命令
docker 服务相关命令
# 重启 docker 服务
service docker restart
# 关闭 docker 服务
service docker stop
# 启动 docker 服务
service dockers start
镜像相关命令
# 拉取镜像
docker pull <镜像名:tag>
# 查看镜像
docker images
# 删除镜像
docker rmi 镜像ID
# 强制删除镜像
docker rmi -f 镜像ID
docker rm <容器名 或者 容器ID>
容器相关命令
# 查看当前运行的容器
docker ps
# 查看所有存在的容器
docker ps -a
# 启动容器
docker start 容器名称/容器ID
# 停止容器
docker stop 容器名称/容器ID
# 删除容器
docker rm 容器名称/容器ID
# 强制删除容器
docker rm -f 容器名称/容器ID
# 删除所有容器(谨慎操作)
docker rm $(docker ps -a -q)
# 查看容器日志
docker logs -f 容器名称/容器ID
# 进入容器
docker exec -it 容器名称 bash
docker 运行相关命令
## 后台运行
docker run -d <Other Parameters>
# 例如:docker run -d -p 127.0.0.1:33301:22 centos6-ssh
## 暴露端口
# 一共有三种形式进行端口映射
docker -p ip:hostPort:containerPort # 映射指定地址的主机端口到容器端口
# 例如:docker -p 127.0.0.1:3306:3306 映射本机3306端口到容器的3306端口
docker -p ip::containerPort # 映射指定地址的任意可用端口到容器端口
# 例如:docker -p 127.0.0.1::3306 映射本机的随机可用端口到容器3306端口
docer -p hostPort:containerPort # 映射本机的指定端口到容器的指定端口
# 例如:docker -p 3306:3306 # 映射本机的3306端口到容器的3306端口
## 映射数据卷
# 这里/home/data 指的是宿主机的目录地址,后者则是容器的目录地址
docker -v /home/data:/opt/data
Docker 安装 Mysql
1、下载 mysql 镜像
docker pull mysql:5.7
2、启动 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=root -d mysql:5.7
3、创建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 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
4、重启 mysql
docker restart mysql
5、设置 mysql 自启动
docker update mysql --restart=always
Docker 安装 Redis
1、下载 redis 镜像
docker pull redis
2、创建配置文件
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
3、启动容器
docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf
4、运行 redis 客户端
docker exec -it redis redis-cli
5、开启 aof 持久化
vi /mydata/redis/conf/redis.conf
# 添加如下内容
appendonly yes
6、重启 redis
docker restart redis
7、设置 redis 自启动
docker update redis --restart=always