该项目很多软件都安装在linux系统上,我使用的是阿里云服务器。
这里使用docker配置环境
安装Docker
1. 删除老版本,如果没有安装过docker忽略
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2. 安装工具包并设置存储库
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
3. 安装docker引擎
sudo yum install docker-ce docker-ce-cli containerd.io
4. 设置阿里云镜像加速
如果不设置阿里云镜像加速,docker默认从国外服务器拉去镜像,下载速度你懂的。
阿里云镜像加速链接
注册并登陆阿里云,镜像服务->镜像加速,复制命令执行即可
5. docker命令
# 启动docker
sudo systemctl start docker
# 查看docker版本
docker -v
# 查看docker镜像
sudo docker images
# 查看已运行容器
sudo docker ps
# 设置docker开机自启动
sudo systemctl enable docker
MySQL of Docker
1. 拉取mysql镜像
该项目拉取mysql:5.7的镜像
docker pull mysql:5.7
2. docker运行mysql容器
参数说明
- -p 3306:3306:将容器的3306端口映射到主机的3306端口
- –name:给容器命名
- -v /mydata/mysql/log:/var/log/mysql:将配置文件挂载到主机/mydata/…
- -e MYSQL_ROOT_PASSWORD=root:初始化root用户的密码为root
- -d 后台运行容器
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
3. mysql配置
编辑文件 vim /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
设置root远程访问权限
grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
flush privileges;
重启mysql容器使配置生效
docker restart mysql
Redis of Docker
1. 拉取redis镜像
docker pull redis
因为初始化的redis是没有etc/redis/redis.conf文件的,所以执行
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf
时,docker可能把/mydata/redis/conf/redis.conf
当成一个目录映射,所以先创建/mydata/redis/conf/redis.conf
文件
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
docker启动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
redis默认是不开启持久化的,需要开始持久化
# 在redis.conf文件里加一句 appendonly yes
vim /mydata/redis/conf/redis.conf
appendonly yes
容器随docker启动自动运行
# mysql
docker update mysql --restart=always
# redis
docker update redis --restart=always