Quickly build the following environment:
VirtualBox
VM environment
Vagrant
Finished image
$ vagrant box add centos-7 ./centos-7.0-x86_64.box
$ vagrant init centos-7
$ vagrant up
$ vagrant ssh
Modify the port
administrator
$ su root
# 密码 vagrant
$ whoami
Entry case: https://www.cnblogs.com/lawsssscat/p/12676477.html
Modify language: https://blog.csdn.net/liupeifeng3514/article/details/79005568
docker
Virtual container
Common docker commands
In addition:
Docker container restart strategy:docker inspect 容器ID
Delete old version
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
Installation: Official website tutorial https://docs.docker.com/engine/install/centos/ (not recommended)
# 推荐
$ sudo yum install docker
Open
$ sudo systemctl start docker
$ sudo systemctl enable docker
Alibaba Cloud Container Image Service: https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
$ sudo mkdir -p /etc/docker
$ sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://eslh5xx9.mirror.aliyuncs.com"]
}
EOF
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
MySQL
Start mysql
Exception handling: error creating overlay mount to / var / lib / docker / overlay2
$ sudo docker pull mysql:5.7
$ sudo docker images
$ sudo docker run --name mysql --privileged=true -p 3307:3306 \
-v /dev/mydata/mysql/log:/var/log/mysql \
-v /dev/mydata/mysql/data:/var/lib/mysql \
-v /dev/mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
-v
File directory (volume) mapping/dev/mydata/mysql/log:/var/log/mysql
Log mapped to local/dev/mydata/mysql/data:/var/lib/mysql
Database data is mapped to local/dev/mydata/mysql/conf:/etc/mysql
Configuration file mapped to localMYSQL_ROOT_PASSWORD=root
(Required) Set database password
Enter mysql
docker exec -it mysql /bin/bash
Docker official website about MySQL: 5.7: https://hub.docker.com/_/mysql
Docker official website about MySQL: 5.7 Dockerfile: https://github.com/docker-library/mysql/blob/d284e15821ac64b6eda1b146775bf4b6f4844077/5.7/Dockerfile
Modify encoding
vim /dev/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
Restart mysql and enter
docker restart mysql
docker exec -it mysql /bin/bash
Start with docker start and start
$ sudo docker update mysql --restart=always
docker update: update the configuration of one or more containers
repeat
installation
$ sudo docker pull redis
Turn on data persistence
vim /dev/mydata/redis/conf/redis.conf
Input configuration
# 启用AOF持久化
appendonly yes
start up
$ sudo docker run --name redis \
-v /dev/mydata/redis/data:/data \
-v /dev/mydata/redis/conf:/etc/redis \
-p 6379:6379 \
-d redis redis-server /etc/redis/redis.conf
$
Note: The path mapping here cannot be a file, because it will be overwritten as a directory, and an error will be reported when starting again
Start with docker start and start
$ sudo docker update redis --restart=always
Client login
docker exec -it redis redis-cli
docker restart redis
- Redis Desktop Manager visualization tool
- redis series: https://blog.csdn.net/LawssssCat/article/details/105087326