写在前面:
博主安装是在阿里云服务器上安装的,在阿里云服务器上安装需要注意的两点是:
1 要打开端口
2 要开防火墙
具体操作如下
1 拉取并运行
mysql
# 拉取
docker pull mysql:5.7
# 运行
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 \
--restart=always \
-d mysql:5.7
# -p 主机端口:容器端口
- 容器端口映射到主机对应端口
# --name 容器名称
# -v 主机目录:容器目录
- 分别挂载log、data和conf目录到主机的mydata/mysql目录
# -e MYSQL_ROOT_PASSWORD=密码
- 设置root密码
# --restart=always
- 在重启docker时,自动启动mysql容器
# -d
- 以后台方式运行
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
elasticsearch
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e “discovery.type=single-node” -v/mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v/mydata/elasticsearch/data:/usr/share/elasticsearch/data -v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins -d elasticsearch:7.4.2
66e85906448e2ab873334f24e3f867931e5e92d2ceced3e1dc11312076ea641a
2 配置MySQL
vi /mydata/mysql/conf/my.conf
# 配置文件内容
[client]
default-character-set=utf-8
[mysql]
default-character-set=utf-8
[mysqlld]
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
# 重启容器
docker restart mysql
3 开启端口
# 查看防火墙状态
systemctl status firewalld
# 查看zone名称
firewall-cmd --get-active-zones
# 添加端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 重启防火墙
firewall-cmd --reload
# 查看端口是否开放
firewall-cmd --query-port=3306/tcp
4 防火墙操作
firewall
systemctl status firewalld # 查看状态
systemctl start firewalld # 启动,
systemctl enable firewalld # 开机启动
systemctl restart firewalld # 重启
systemctl stop firewalld # 关闭
systemctl disable firewalld # 取消开机启动
iptables
service iptables status # 查看状态
service iptables start # 单次开启,下次根据配置是否开启
service iptables stop # 单次关闭,下次根据配置是否开启
chkconfig iptables on # 配置开启,需重启
chkconfig iptables off # 配置关闭,需重启
注意:
1 docker安装es挂载目录需要改变外部目录的权限。如果安装服务启动不了可以通过docker los查看日志进而判断具体原因
2 采用阿里云服务器安装的一定得设置安全组,并放行相应端口号