常见Docker服务的部署安装

常见Docker服务的部署安装

配置远程连接

1、修改Docker Service服务文件

1
vim /usr/lib/systemd/system/docker.service

2、找到ExecStart,在最后面添加 -H tcp://0.0.0.0:2375

3、重启Docker服务

1
2
systemctl daemon-reload  
systemctl restart docker

4、防火墙放行端口

1
firewall-cmd --zone=public --add-port=2375/tcp --permanent 

5、重载防火墙规则

1
firewall-cmd --reload

MySQL的部署安装

拉取镜像

1
docker pull mysql:5.7

创建MySQL容器,并挂载存储卷

1
2
3
4
5
6
7
8
docker run -di \
--name mysql57 \ # 指定容器名称
-p 3306:3306 \ # 服务端口号映射
-e MYSQL_ROOT_PASSWORD=Root@123! \ # 初始化root用户密码
-v `pwd`/mysql/conf:/etc/mysql/conf.d \ # 映射mysql配置目录
-v `pwd`/mysql/logs:/logs \ # 映射mysql日志目录
-v `pwd`/mysql/data:/var/lib/mysql # 映射mysql数据目录
mysql:5.7

Tomcat的部署安装

拉取镜像

1
docker pull redis:6

创建Tomcat容器,并挂载存储卷

1
2
3
4
docker run -di --name tomcat_bot \
-p 8080:8080 \
-v `pwd`/tomcat/webapps:/usr/local/tomcat/webapps \
tomcat

RabbitMQ的部署安装

拉取镜像(带管理页面)

1
docker pull rabbitmq:3.7.7-management

创建容器

1
2
3
4
5
6
7
8
9
10
docker run -d --name bot_rabbitmq \
--restart=always \
-p 5672:5672 \
-p 15672:15672 \
-v `pwd`/data:/var/lib/rabbitmq \
--hostname botRabbit \
-e RABBITMQ_DEFAULT_VHOST=my_vhost \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin \
rabbitmq:3.7.7-management

Nginx的部署安装

拉取镜像

1
docker pull nginx:1.21.1

创建容器,并挂载存储卷

1
2
3
4
5
6
docker run -di --name nginx_bot \
-p 80:80 -p 443:443 \
-v `pwd`/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ # 配置文件需提前准备
-v `pwd`/nginx/logs:/log/nginx \
-v `pwd`/nginx/html:/usr/share/nginx/html \
nginx:1.21.1

nginx默认配置文件(精简版) Nginx的版本发布页

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
worker_processes  1;
events {
worker_connections 1024;
}


http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;

server {
listen 80;
server_name localhost;

location / {
root html;
index index.html index.htm;
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}

Elasticsearch + Kibana

Elasticsearch

1、拉取镜像

1
sudo docker pull docker.elastic.co/elasticsearch/elasticsearch:7.7.1

2、启动容器

1
2
3
4
sudo docker run -d --name=es \
-p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
docker.elastic.co/elasticsearch/elasticsearch:7.7.1

3、进入到容器中,安装IK分词器

1
2
# 进入到容器
sudo docker exec -it es /bin/bash
1
2
# 下载安装IK分词器
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.7.1/elasticsearch-analysis-ik-7.7.1.zip

4、Elasticsearch跨域访问配置(容器内)

1
2
# 编辑配置文件
vi config/elasticsearch.yml

配置文件修改后的内容

1
2
3
4
5
6
7
8
9
cluster.name: "docker-cluster"
network.host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: "*"

# minimum_master_nodes need to be explicitly set when bound on a public IP
# set to 1 to allow single node clusters
# Details: https://github.com/elastic/elasticsearch/pull/17288
discovery.zen.minimum_master_nodes: 1

5、退出容器,并重启容器

1
2
3
4
# 容器内执行,退出当前容器,返回到操作系统
exit
# 重启Elasticsearch容器
sudo docker restart es

6、浏览器访问

1
http://ip:9200

Kibana

1、拉取镜像,此处的镜像版本需要和已安装的Elasticsearch的版本一致

1
sudo docker pull docker.elastic.co/kibana/kibana:7.7.1

2、启动容器

1
2
3
4
sudo docker run -it -d \
-e ELASTICSEARCH_URL=http://192.168.8.20:9200 \ # 映射绑定es服务
--name kibana -p 5601:5601 \
docker.elastic.co/kibana/kibana:7.7.1

3、进入容器,修改kibana配置文件

1
sudo docker exec -it kibana /bin/bash
1
vi config/kibana.yml

修改内容如下:

1
2
3
4
5
6
7
8
9
10
#
# ** THIS IS AN AUTO-GENERATED FILE **
#

# Default Kibana configuration for docker target
server.name: kibana
server.host: "0"
# 主要修改此处的es服务请求地址
elasticsearch.hosts: [ "http://192.168.8.20:9200" ]
monitoring.ui.container.elasticsearch.enabled: true

4、退出容器,并重启容器

1
exit
1
sudo docker restart kibana

5、浏览器访问

1
http://ip:5601

常见Docker服务的部署安装
https://saotolls.github.io/2023/07/01/常见Docker服务的部署安装/
作者
saotolls.china
发布于
2023年7月1日
许可协议