liunx安装docker,portainer,mysql,rabbitMQ,nacos

由于公司框架迭代了, 故此写个随笔, 记录一下, 方便日后回顾

1. 准备

阿里云服务器 (liunx CentOS 7.6)

2. 前置工作

(1) 查看系统版本

lsb_release -a

 

 (2) 查看系统以及内核

1
uname -r   (docker需要系统64,内核3.10.0+)

(3) 查看是否已安装过 docker 列表

1
yum list installed | grep docker

  

3.docker 安装

(1)yum 下载以及安装 docker

yum -y install docker

(2) 启动 docker

systemctl start docker

(3) 查看 docker 状态

1
systemctl status docker

 

4.docker 安装 portainer

(1) 拉取 portainer 镜像

1
docker pull portainer/portainer

 

 

(2) 启动 portainer

docker run -d --name portainer -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer  (本地连接)

如果上面命令无法运行可以清除容器, 重启 docker

显示所有容器, 包括未运行的: docker ps -a

删除容器: docker rm 容器 ID

重启 docker 服务: systemctl restart  docker    

 

 

 

 

 

(3) 设置防火墙

1
firewall-cmd --state  (由于从外网访问需要设置一下)

启动: systemctl start firewalld

查看状态: systemctl status firewalld 

停止: systemctl disable firewalld

禁用: systemctl stop firewalld

查看防火墙开发的所有端口:  firewall-cmd --zone=public --list-ports

添加端口: firewall-cmd --zone=public --add-port=80/tcp --permanent    (--permanent 永久生效,没有此参数重启后失效)

重新载入: firewall-cmd --reload

查看端口状态: firewall-cmd --zone= public --query-port=80/tcp

关闭端口: firewall-cmd --zone= public --remove-port=80/tcp --permanent

 

 

 按照命令将防火墙启动起来, 并将 9000 端口开放, 就可以 ip+9000 访问了

 

 

 5.docker 搭建 mysql

(1) 安装 mysql

1
docker pull mysql:8.0    (冒号后面的版本自己修改就好)  

 

 

 (2) 启动 mysql

1
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0

 

 

 (3) 配置远程连接

1
进入mysql容器: docker exec -it mysql bash 登录mysql: mysql -u root -p修改root用户可以远程连接: ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';记得开放3306端口

6.docker 安装 redis

(1) 安装 redis

1
docker pull redis:latest

 

 

 (2) 启动 redis

1
docker run -di --name=redis -p 6379:6379 --restart=always redis:latest

(3) 进入 docker 的 redis 容器

1
docker exec -ti [容器id] redis-cli

 

 

7.docker 安装 rabbitMq 

(1) 安装 mq

1
docker pull rabbitmq:3.7.14-management

(2) 启动 mq

1
docker run -di --name rabbitmq -p 5672:5672 -p 15672:15672 -v `pwd`/rabbitmq:/var/lib/rabbitmq --hostname myRabbit -e RABBITMQ_DEFAULT_VHOST=myvhost -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin rabbitmq:3.7.14-management

 访问:ip+15762

 

 

 

 8.docker 安装 nacos

(1) 安装 nacos

1
docker pull nacos/nacos-server

(2) 挂载目录

1
2
mkdir -p /home/nacos/logs/                      #新建logs目录
mkdir -p /home/nacos/init.d/

(3) 创建 nacos 数据库

创建 nacos 数据库并执行sql

(4) 修改 nacos 配置文件

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
28
29
30
31
32
33
34
vim /home/nacos/init.d/custom.propertiesserver.contextPath=/nacos
server.servlet.contextPath=/nacos
server.port=8848
 
spring.datasource.platform=mysql
 
db.num=1
db.url.0=jdbc:mysql://xx.xx.xx.x:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=user
db.password=pass
 
 
nacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false
 
management.metrics.export.elastic.enabled=false
 
management.metrics.export.influx.enabled=false
 
 
server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i
 
 
nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
nacos.naming.distro.taskDispatchThreadCount=1
nacos.naming.distro.taskDispatchPeriod=200
nacos.naming.distro.batchSyncKeyCount=1000
nacos.naming.distro.initDataRatio=0.9
nacos.naming.distro.syncRetryDelay=5000
nacos.naming.data.warmup=true
nacos.naming.expireInstance=true

保存该配置

(5) 运行 nacos

1
2
3
4
5
6
7
8
9
10
11
12
docker  run \
--name nacos -d \
-p 8848:8848 \
--privileged=true \
--restart=always \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e MODE=standalone \
-e PREFER_HOST_MODE=hostname \
-v /home/nacos/logs:/home/nacos/logs \
-v /home/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties \
nacos/nacos-serverf 

访问 ip+8848/nacos/#/login