一、安装 mysql
1****、下载镜像文件
docker pull mysql:5.7
2、创建实例并启动
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
参数说明
-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口
-v /mydata/mysql/conf:/etc/mysql:将配置文件夹挂载到主机
-v /mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机
-v /mydata/mysql/data:/var/lib/mysql/:将数据库文件夹挂载到主机
-e MYSQL_ROOT_PASSWORD=root:初始化 root 用户的密码
**3、MySQL **配置
vi /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
参数说明:
skip-name-resolve:跳过域名解析,解决mysql连接慢的问题
*4***、通过容器的 ****mysql ****命令行工具连接 **
docker exec -it mysql mysql -uroot -proot
*5***、设置 ****root ****远程访问 **
grant all privileges on . to 'root'@'%' identified by 'root' with grant option;
flush privileges;
*6***、进入容器文件系统 **
docker exec -it mysql /bin/bash
7****、mysql容器自启动
docker update mysql --restart=always
二、安装redis
*1***、下载镜像文件 **
docker pull redis
*2***、创建实例并启动 **
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
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
3****、redis.conf参数说明:
redis 自描述文件:
https://raw.githubusercontent.com/antirez/redis/4.0/redis.conf
appendonly yes 如:开启持久化
*4***、使用 ****redis ****镜像执行 ****redis-cli ****命令连接 **
docker exec -it redis redis-cli
5** **redis 容器自启动
docker update redis --restart=always
**三、安装 **nginx
1、第一次安装,只是为了配置获取配置文件
docker run -p 80:80 --name nginx -d nginx:1.21.3 #启动一个 nginx 实例,无需先下载镜像
docker container cp nginx:/etc/nginx /home/. #将容器内的配置文件拷贝到home目录
mv /home/nginx /mydata/nginx/conf #把配置移动到/mydata/nginx/conf下
docker stop nginx #终止原容器
docker rm $ContainerId #删除原容器
2、创建新的ngnix容器
docker run -p 80:80 --name nginx \
-v /mydata/nginx/html:/usr/share/nginx/html \
-v /mydata/nginx/logs:/var/log/nginx \
-v /mydata/nginx/conf:/etc/nginx \
-d nginx:1.21.3
挂载目录是为了配置方便,无需进入容器修改,在宿主主机上可直接修改
3、ngnix容器自启动
docker update ngnix --restart=always
四、安装ES
*1***、下载镜像文件 **
docker pull elasticsearch:8.2.0 #存储和检索数据 服务端
docker pull kibana:8.2.0 #可视化检索数据 客户端
**2、创建ElasticSearch实例 **
mkdir -p /mydata/elasticsearch/config
mkdir -p /mydata/elasticsearch/data
echo "http.host: 0.0.0.0" >> /mydata/elasticsearch/config/elasticsearch.yml
chmod -R 777 /mydata/elasticsearch/ 保证权限
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms64m -Xmx512m" \
-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:8.2.0
3、创建Kibana容器
docker run --name kibana -e \ ELASTICSEARCH_HOSTS=http://192.168.11.107:9200 - 5601:5601 -d kibana:8.2.0
注意:http://192.168.11.107:9200 一定改为自己的地址
3、容器自启动
docker update elasticsearch --restart=always
docker update kibana --restart=always
版权归原作者 ipsecvpn 所有, 如有侵权,请联系我们删除。