linux系统安装docker
1.卸载旧版本的docker环境,如果linux系统没安装过docker,可以跳过此步骤
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2.设置docker的地址
2.1.安装必须依赖的包
sudo yum install -y yum-utils
2.2.告诉linux从哪里安装docker
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
3.安装docker-ce,docker的引擎,操作docker的客户端,以及容器
sudo yum install docker-ce docker-ce-cli containerd.io
4.启动docker
sudo systemctl start docker
5.其他命令
docker -v 查看docker的版本
sudo docker images 检查虚拟机上安装了哪些镜像
6.给docker设置开机自启动
sudo systemctl enable docker
7.给docker配置阿里云镜像加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://xcp9kqb5.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
docker安装MySQL
用户为vagrant时,需要在命令前加 sudo,也可以直接切换到root用户
切换到root用户
su root
密码为vagrant
切换到root用户后就无需在命令前输入 sudo 了
docker从镜像仓库下载MySQL
docker pull mysql:5.7
检查下载的镜像
docker images
启动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
查看docker正在运行中的容器
docker ps
修改配置
[root@localhost vagrant]# cd /mydata/
[root@localhost mydata]# ls
mysql
[root@localhost mydata]# cd mysql/
[root@localhost mysql]# ls
conf data log
[root@localhost mysql]#
[root@localhost mysql]# cd conf/
[root@localhost conf]# ls
[root@localhost conf]#
[root@localhost conf]# vi my.cnf
i进入编辑, :wq保存并退出编辑
[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
编辑好后重启mysql
docker restart mysql
进入容器查看配置:
docker exec -it mysql /bin/bash
cat /etc/mysql/my.cnf
设置启动docker时,即运行mysql
docker update mysql --restart=always
docker安装redis
下载redis
docker pull redis
创建配置文件并启动redis
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
echo "appendonly yes" >> /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
查看docker正在运行中的容器
docker ps
连接redis的客户端
docker exec -it redis redis-cli
设置redis容器在docker启动的时候自启动
docker update redis --restart=always