本文共 2752 字,大约阅读时间需要 9 分钟。
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
sudo yum install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo systemctl enable docker
sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-'EOF'{ "registry-mirrors": ["https://xp4abd48.mirror.aliyuncs.com"]}EOFsudo systemctl daemon-reloadsudo systemctl restart docker
把上述的复制粘贴到自己的服务器上,就可以让自己的docker拥有阿里云的加速镜像服务了。
docker pull mysql:5.7
启动mysql
sudo docker run -p 3307: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
第一行命令:把主机的3306端口映射到了容器的3306端口
第二行命令:把容器的log日志目录/var/log/mysql挂载到了主机的/mydata/mysql/log
第三行命令:把容器的mysql存储的数据/var/lib/mysql挂载到了主机的/mydata/mysql/data
第四行命令:把容器的配置文件/etc/mysql 挂载到了主机的/mydata/mysql/conf
第五行命令:更改mysql的密码
第六行命令:选取容器的镜像
阿里云服务器如果上述完成以后使用命令docker ps 看不到 镜像启动 可以参照这篇博文 [https://blog.csdn.net/qq_41999034/article/details/106162366]
这个就是网上解决阿里云服务器使用docker 运行mysql的时候遇到的问题以及解决办法
cd /mydata/lscd mysql/cd conf/sudo vim 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=utf8collation-server=utf8_unicode_ciskip-character-set-client-handshakeskip-name-resolve然后重新启动mysql
docker restart mysql
在这里一般阿里云服务器会遇到mysql不让远程连接,因此要设置
设置mysql的配置文件,先设置跳过密码登陆
skip-grant-tables
设置完了之后要重启
docker restart mysql
然后以交互式的方式进入
docker exec -it mysql /bin/bash
登陆更改
mysql -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;FLUSH PRIVILEGES;exit;
docker pull redismkdir mkdir -p /mydata/redis/conftouch /mydata/redis/conf/redis.confdocker 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
同时还要在redis的配置文件/mydata/redis/conf/redis.conf中去配置数据库持久化,内容为
appendonly yes
操作步骤
cd /mydata/rediscd conf/vim redis.confdocker restart redisdocker exec -it redis redis-cli