Skip to content

docker安装组件

查看所有进程 docker ps -a

删除容器 docker rm "container id"

如果容器已经启动过,通过docker start "container id"启动,通过docker stop "container id"停止

一、zipkin

docker pull openzipkin/zipkin:latest
docker run -d -p 9411:9411 openzipkin/zipkin --restart=unless-stopped

二、ribbitMQ

RabbitMQ默认创建了一个 guest 用户,密码也是 guest,15672是控制台地址。如果需要自定义,可以通过一下方式进行配置

docker pull rabbitmq:3.9.16-management
#hostname是主机名称
docker run -d --name=rabbitmq --hostname=rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:3.9.16-management
#带有密码的
docker run -d --name=rabbitmq --hostname=rabbitmq -p 5672:5672 -p 15672:15672 -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin  rabbitmq:3.9.16-management

端口介绍

4369 erlang 发现口
5672 client 端通信口
15672 管理界面 ui 端口
25672 server 间内部通信口

三、nginx

docker run --name mynginx -p 9080:9080 -v /software/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v -v /software/nginx/logs:/var/log/nginx --restart unless-stopped  nginx

四、nacos

docker pull nacos/nacos-server:v2.0.4
docker run --env MODE=standalone --name nacos -d -p 8848:8848 --restart=unless-stopped ef8e53226440 (镜像id)
#映射配置文件
docker run -d -p 8848:8848 -e MODE=standalone  -v /software/nacos/logs:/home/nacos/logs  -v /software/nacos/conf/application.properties:/home/nacos/conf/application.properties --restart=unless-stopped --name nacos nacos/nacos-server:2.0.4
#通过参数配置持久化,配置数据库的地址和账号密码
docker run -d -e MODE=standalone -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=192.168.0.104 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=nacos -e MYSQL_SERVICE_DB_NAME=nacos -e JVM_XMS=512m -e JVM_XMX=512m -e JVM_XMN=512m  -p 8848:8848 --restart=unless-stopped --name nacos nacos/nacos-server:2.0.4
#nacos 2.2.1以后移除了token.secret.key和server.identity等参数,主要用于集群权限认证的,这里启动时需要带上这个参数NACOS_AUTH_IDENTITY_KEY、NACOS_AUTH_IDENTITY_VALUE、NACOS_AUTH_TOKEN
docker run -d -e MODE=standalone -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=192.168.0.104 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=nacos -e MYSQL_SERVICE_DB_NAME=nacos -e JVM_XMS=512m -e JVM_XMX=512m -e JVM_XMN=512m  -p 8848:8848 --restart=unless-stopped --name nacos nacos/nacos-server:2.2.1

nacos升级:将2.0.4升级到2.1.0,如果没有做数据库持久化则无需修改,如果是持久化需要执行一下sql

ALTER TABLE nacos.config_info ADD encrypted_data_key TEXT NOT NULL;
ALTER TABLE nacos.config_info_beta ADD encrypted_data_key TEXT NOT NULL;
ALTER TABLE nacos.his_config_info ADD encrypted_data_key TEXT NOT NULL;

五、sentinel

docker pull bladex/sentinel-dashboard:latest
docker run --name sentinel -d -p 8858:8858 --restart=unless-stopped 镜像id

六、jenkins

#注意/var/run/docker.sock这个路径共用宿主机的docker,还要时区的映射
docker run -d --name jenkins --restart unless-stopped --privileged=true -p 8080:8080 -v /software/jenkins/data:/var/jenkins_home -v /software/jenkins/maven:/usr/local/maven -v /software/jenkins/.ssh:/var/jenkins_home/.ssh -v /var/run/docker.sock:/var/run/docker.sock  harbor.twolf.com/common/jenkins/jenkins:2.446-jdk17

启动以后如果报权限错误:

touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied

执行以下命令:

chown -R 1000 /software/jenkins/
docker restart jenkins

注意启动了jenkins以后时区还是不一致,需要修改:

进入Jenkins→系统管理→脚本命令行,输入

System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone', 'Asia/Shanghai')

汉化插件:

locale