安装Docker和Docker-Compose见安装Docker&Docker-Compose
Nexus
java jar包私服仓库
- 编写docker-compose.yaml
vim docker-compose.yaml
version: '3'
services:
nexus:
restart: always
image: sonatype/nexus3:3.17.0
volumes:
- /data/nexus-data:/nexus-data
ports:
- "8081:8081"
-
启动
docker-compose up -d
-
登录控制台初始化
localhost:8081
设置新密码
-
配置仓库
-
新建阿里云代理仓库:Create Repository -> maven2(proxy)
Name: aliyun-proxy
Remote storage: https://maven.aliyun.com/repository/public
-
配置maven-public group
将aliyun-proxy仓库添加的组中,位置排在maven-release后
-
-
创建任务
创建清理快照任务
System -> Tasks -> Create Task
选择Maven-Delete SNAPSHOT
配置任务名称,清理的仓库:Maven-SNAPSHOT, 清理周期:每周
Harbor
镜像仓库
-
获取安装包
release: https://github.com/goharbor/harbor/releases
wget https://download.fastgit.org/goharbor/harbor/releases/download/v2.2.2/harbor-online-installer-v2.2.2.tgz
-
解压
tar -xf harbor-online-installer-v2.2.2.tgz
-
编辑配置文件
#将原配置文件拷贝一份 cp harbor.yaml.tmp harbor.yaml #编辑 vim harbor.yaml
# 配置域名 hostname: abc.com # 修改端口号 http: port: 8082 harbor_admin_password: Harbor12345 database: password: root123 max_idle_conns: 50 max_open_conns: 1000 # 修改数据卷 data_volume: /data/harbor/data trivy: ignore_unfixed: false skip_update: false insecure: false jobservice: max_job_workers: 10 notification: webhook_job_max_retry: 10 chart: absolute_url: disabled log: level: info local: rotate_count: 50 rotate_size: 200M #修改日志路径 location: /data/harbor/log _version: 2.2.0 proxy: http_proxy: https_proxy: no_proxy: components: - core - jobservice - trivy
-
安装
sudo ./install.sh
-
登录控制台
localhost:8082
默认账号密码:admin Harbor12345
-
新建账号用于发布
-
配置垃圾清理定时任务,频率:每周
Elastic
- 编写docker-compose文件
version: '3'
services:
es:
image: docker.elastic.co/elasticsearch/elasticsearch:7.13.2
container_name: es
environment:
- discovery.type=single-node
- network.publish_host=172.31.240.178
- bootstrap.memory_lock=true
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- ./data:/usr/share/elasticsearch/data
- ./plugins:/usr/share/elasticsearch/plugins
ports:
- 9200:9200
- 9300:9300
volumes:
data:
driver: local
-
新建data与plugins目录
mkdir data plugins
-
赋权
chmod 777 data plugins
-
启动
docker-compose up -d
Kibana
-
编写配置文件
vim kibana.yml
server.host: "0" elasticsearch.hosts: [ "http://172.31.240.178:9200" ] i18n.locale: "zh-CN"
-
编写docker-compose文件
version: '3' services: kibana: image: docker.elastic.co/kibana/kibana:7.13.2 container_name: kibana volumes: - ./kibana.yaml:/usr/share/kibana/config/kibana.yml ports: - 5601:5601
-
启动
docker-compose up -d
MySQL
-
编写docker-compose
version: '3.1' services: db: image: mysql:5.7.34 restart: always environment: MYSQL_ROOT_PASSWORD: mysql&2021 command: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --explicit_defaults_for_timestamp=true --lower_case_table_names=1 ports: - 3306:3306 volumes: - ./data:/var/lib/mysql
-
启动
docker-compose up -d
Nacos
-
编写环境配置
mkdir init.d && cd init.d
vim custom.properties
management.endpoints.web.exposure.include=*
-
初始化数据库
https://github.com/alibaba/nacos/blob/1.4.2/distribution/conf/nacos-mysql.sql
-
编写docker-compose文件
version: "3.1" services: nacos: image: nacos/nacos-server:1.4.2 container_name: nacos-standalone-mysql environment: MODE: standalone SPRING_DATASOURCE_PLATFORM: mysql MYSQL_SERVICE_HOST: 172.31.240.179 MYSQL_SERVICE_DB_NAME: nacos MYSQL_SERVICE_PORT: 3306 MYSQL_SERVICE_USER: root MYSQL_SERVICE_PASSWORD: mysql&2021 MYSQL_SERVICE_DB_PARAM: characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false volumes: - ./standalone-logs/:/home/nacos/logs - ./init.d/custom.properties:/home/nacos/init.d/custom.properties ports: - "8848:8848" restart: on-failure
-
启动
docker-compose up -d
Redis
-
编写docker-compose文件
version: '3.1' services: redis: image: redis environment: TZ: Asia/Shanghai ports: - 6379:6379 command: redis-server --requirepass redis@2021 volumes: - ./redis-data:/var/lib/redis
-
启动
docker-compose up -d