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