由於公司框架迭代了,故此寫個隨筆,記錄一下,方便日后回顧
1.准備
阿里雲服務器(liunx CentOS 7.6)
2.前置工作
(1)查看系統版本
lsb_release -a
(2)查看系統以及內核
uname -r (docker需要系統64,內核3.10.0+)
(3)查看是否已安裝過docker列表
yum list installed | grep docker
3.docker安裝
(1)yum下載以及安裝docker
yum -y install docker
(2)啟動docker
systemctl start docker
(3)查看docker狀態
systemctl status docker
4.docker安裝portainer
(1)拉取portainer鏡像
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)設置防火牆
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
docker pull mysql:8.0 (冒號后面的版本自己修改就好)
(2)啟動mysql
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0
(3)配置遠程連接
進入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
docker pull redis:latest
(2)啟動redis
docker run -di --name=redis -p 6379:6379 --restart=always redis:latest
(3)進入docker的redis容器
docker exec -ti [容器id] redis-cli
7.docker安裝rabbitMq
(1)安裝mq
docker pull rabbitmq:3.7.14-management
(2)啟動mq
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
docker pull nacos/nacos-server
(2)掛載目錄
mkdir -p /home/nacos/logs/ #新建logs目錄 mkdir -p /home/nacos/init.d/
(3)創建nacos數據庫
創建nacos數據庫並執行sql
(4)修改nacos配置文件
vim /home/nacos/init.d/custom.properties
server.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
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