文章目录
Docker是什么
Docker中每一个容器都是独立运行的,相当于一个独立的linux系统,如果想便捷地修改容器内的文件,我们就需要把容器目录挂载到主机的目录上。容器端口类似,外界无法直接访问容器内部的端口,需要先将容器端口映射到linux主机端口上才能访问。
一、使用环境、工具
1.环境
Win10
2.工具
Vagrant + Virtual Box
二、安装步骤
docker安装教程:https://docs.docker.com/engine/install/centos/#install-using-the-repository
1.卸载旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2.安装yum-utils软件包并设置存储库
sudo yum install -y yum-utils
默认从国外网站 docker hub 下载镜像
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
3.安装最新版本的Docker Engine和容器
sudo yum install docker-ce docker-ce-cli containerd.io
一路yes
三、Docker使用
1.启动docker
sudo systemctl start docker
查看docker版本
docker version
查看镜像:目前是空的
docker images
2.设置开机自启
sudo systemctl enable docker
3.配置阿里云镜像加速
参考:阿里云镜像加速服务
# 创建文件
sudo mkdir -p /etc/docker
# 修改配置, 设置镜像
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://vw9qapdy.mirror.aliyuncs.com"]
}
EOF
# 重启后台线程
sudo systemctl daemon-reload
# 重启docker
sudo systemctl restart docker
四、Mysql
1.Docker安装Mysql
后面不加" : 版本号 "则默认下载最新版
sudo docker pull mysql:5.7
2.创建实例并启动
sudo 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
参数说明:
-p 3306:3306:将mysql容器的3306端口映射到主机的3306端口
#文件挂载
-v /mydata/mysql/log:/var/log/mysql:将mysql日志文件夹挂载到主机
-v /mydata/mysql/data:/var/lib/mysql:将mysql数据文件夹挂载到主机
-v /mydata/mysql/conf:/etc/mysql:将mysql配置文件夹挂载到主机
-e MYSQL_ROOT_PASSWORD=root: 初始化root用户的密码
-d mysql:5.7:以5.7这个镜像运行
查看docker正在运行中的容器
docker ps
3.修改配置文件
进入挂载的mysql配置目录
cd /mydata/mysql/conf
修改配置文件 my.cnf
vi 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
# Esc
# :wq
docker重启mysql使配置生效
docker restart mysql
五、Redis
1.下载镜像文件
docker pull redis
2.创建实例并启动
创建redis配置文件目录
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
挂载文件、启动redis
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
3.redis配置
配置redis持久化
echo "appendonly yes" >> /mydata/redis/conf/redis.conf
# 重启生效
docker restart redis
五、容器随docker启动自动运行
# mysql
sudo docker update mysql --restart=always
# redis
sudo docker update redis --restart=always
有错误请指出,一起学习;谢谢。