docker--软件安装

在下码不完 1年前 ⋅ 2101 阅读

docker--软件安装

一、ES

  • 下载地址 https://www.elastic.co/cn/downloads/past-releases
  • springboot版本依赖推荐 https://docs.spring.io/spring-data/elasticsearch/docs/current/reference/html/ = 支持的矩阵 https://www.elastic.co/cn/support/matrix#matrix_jvm
  • IK分词器 https://github.com/medcl/elasticsearch-analysis-ik/releases
version: '3.5'
services:
  es:
    image: es:6.8.6
    deploy:
      restart_policy:
        condition: on-failure
        delay: 5s
        max_attempts: 3
      resources:
        limits: # 资源限制
          cpus: '0.50'
          memory: 1024M
    environment:
      - node.name=es
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx1024m"
      - TZ=Asia/Shanghai
      - discovery.type=single-node
      - xpack.security.enabled=true
      - xpack.license.self_generated.type=basic
      - ELASTIC_PASSWORD=zhcfelasticsearch
      - http.cors.enabled=true
      - http.cors.allow-origin='*'
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - /home/mount/es/data:/usr/share/elasticsearch/data
      - /home/mount/es/log:/usr/share/elasticsearch/log
    logging:
      driver: "json-file"
      options:
        max-size: "500m"
        max-file: "5"
    ports:
      - 9200:9200

networks:
  common-overlay:
    driver: overlay

二、minIo

准备挂载的目录

mkdir -p /home/minio/data /home/minio/config

启动

version: '3'
services:
  minio:
    image: minio/minio
    container_name: minio
    privileged: true
    restart: always
    deploy:
      restart_policy:
        condition: on-failure
        delay: 5s
        max_attempts: 1
      resources:
        limits: # 资源限制
          cpus: '0.50'
          memory: 1024M
    volumes:
      - /home/minio/data:/data
      - /home/minio/config:/root/.minio/
    ports:
      - 19022:19022 # api 端口
      - 19011:19011 # 控制台端口
    environment:
      MINIO_ACCESS_KEY: admin
      MINIO_SECRET_KEY: Ts20230420@.WW
    command: server /data --console-address ':19011' --address ":19022"

三、mysql

mkdir -p /home/data/mysql8.0/{data,logs,conf}

docker run --name mysql_8.0 --restart=always -m 1536M -p 22114:3306 \
-v /home/data/mysql8.0/data:/var/lib/mysql \
-v /home/data/mysql8.0/logs:/logs \
-v /home/data/mysql8.0/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=Xhcf@4574QWa -d mysql:8.0

四、rabbitmq

mkdir -p /home/data/rabbitmq

chmod -R 755 /home/data/rabbitmq

docker run -d --name rabbitmq --restart=always -m 512M \
-p 5672:5672 -p 22124:15672 --hostname rabbitmq \
-e RABBITMQ_DEFAULT_VHOST=/ -e RABBITMQ_DEFAULT_USER=test \
-e RABBITMQ_DEFAULT_PASS=test1234 \
-v /home/data/rabbitmq:/var/lib/rabbitmq   masstransit/rabbitmq

rabbitmqctl add_user username password;

rabbitmqctl set_user_tags username administrator

rabbitmqctl set_permissions -p / username "." "." ".*";

五、showdoc

mkdir -p /home/data/showdoc

docker run -d -p 4999:80 --name=showdoc --restart=always -m 512M -v /showdoc/html:/showdoc_data/html showdoc

六、sentinel

docker run --name sentinel --restart=always -p 8858:8858 -m 800M -td bladex/sentinel-dashboard:1.7.2

七、seata

 docker run -d --name seata-server -p 8091:8091 --restart=always -m 512M -e SEATA_IP=172.16.20.156 -e SEATA_PORT=8091 -m 600M seataio/seata-server:1.6.1

八、Sql Server

mkdir -p /sqldata

docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Test@SqlServer20221014." --restart=always -m 1024M -p 11432:1433 --name sqlserver \
-v sqldata:/var/opt/mssql -d mcr.microsoft.com/mssql/server

密码:Test@SqlServer20221014. 端口:11432

九、oracle

docker run -d -p 11523:1521 --restart=always -m 2048M --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

十、mongodb

docker直接部署

运行容器
mkdir -p /home/data/mongodb/data
docker run -itd --name mongo --restart=always -m 1024M -v /home/data/mongodb/data:/data/db \
-e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=Test@Mongo2026. -p 22122:27017 mongo:7.0 --auth

--auth 需要密码才能访问容器服务

创建用户
docker exec -it mongo mongo admin;
db.createUser({ user:'root',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},'readWriteAnyDatabase']});

【user:‘root’ 】:设置用户名为root 【pwd:‘123456’】:设置密码为123456 【role:‘userAdminAnyDatabase’】:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限 【db: ‘admin’】:可操作的数据库 【‘readWriteAnyDatabase’】:赋予用户读写权限

db: 'admin':允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile

docker-compose部署

version: '3.5'
services:
  mongodb:
    image: mongo:latest
    container_name: mongodb
    volumes:
      - /mount/data1/mongodb/configdb:/data/configdb
      - /mount/data1/mongodb/db:/data/db
    ports:
      - "27017:27017"
    restart: always
    command: mongod --auth
    environment:
      - MONGO_INITDB_ROOT_USERNAME=root
      - MONGO_INITDB_ROOT_PASSWORD=123456

  mongo-express:
    image: mongo-express
    container_name: mongo-express
    links:
      - mongodb:mongodb
    depends_on:
      - mongodb
    restart: always
    ports:
      - 8081:8081
    environment:
      ME_CONFIG_MONGODB_SERVER: mongodb
      ME_CONFIG_MONGODB_ADMINUSERNAME: root
      ME_CONFIG_MONGODB_ADMINPASSWORD: 123456
      ME_CONFIG_BASICAUTH_USERNAME: root
      ME_CONFIG_BASICAUTH_PASSWORD: admin123

mongo-express 可视化工具 直接使用IP:8081访问

十一、nacos

mkdir -p /home/data/nacos/{data,logs,conf}

docker run --env MODE=standalone --name nacos -d -p 8848:8848 nacos/nacos-server:v2.4.3-slim

docker container cp nacos:/home/nacos/ /home/data/

docker run -d -p 8848:8848 -p 9848:9848 -p 9849:9849 --name nacos \
-e MODE=standalone -e PREFER_HOST_MODE=hostname \
-e JVM_XMS=512m -e JVM_XMX=2048m \
-v /home/data/nacos/logs:/home/nacos/logs \
-v /home/data/nacos/data:/home/nacos/data \
-v /home/data/nacos/conf:/home/nacos/conf \
--privileged=true --restart=always nacos/nacos-server:v2.4.3-slim

十二、redis

mkdir -p /home/data/redis/{data,logs,conf}

docker run --name redis-server -m 512M --restart=always \
--privileged=true -p 13064:6379 \
-v /home/data/redis/conf/:/usr/local/etc/redis \
-v /home/data/redis/data/:/data \
-v /home/data/redis/logs:/var/log \
-d redis:7.0 redis-server /usr/local/etc/redis/redis.conf \
--appendonly yes --requirepass 'DmJt@202413.#' \
--protected-mode no

在/home/data/redis-server/conf/ 目录下必须要有redis.conf文件

不使用密码则直接注释掉这句 --appendonly yes --requirepass 'xxxxxxx'

十三、xxl-job

https://raw.githubusercontent.com/xuxueli/xxl-job/master/doc/db/tables_xxl_job.sql 上面获取初始化sql UPDATE xxl_job_user SET password = 'e10adc3949ba59abbe56e057f20f883e' WHERE username = 'admin'; ip:port/xxl-job-admin admin/123456

docker run -d -m 512M \
--name xxl-job-admin \
-p 8080:8080 \
-e PARAMS="--spring.datasource.url=jdbc:mysql://xx:xx/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai \
--spring.datasource.username=root \
--spring.datasource.password=123456 \
--xxl.job.accessToken=accessToken" \
xuxueli/xxl-job-admin:2.4.2

十四、jenkins

chown -R 1000:1000 /home/data/jenkins

docker run -d --name jenkins \
--restart always -p 22136:8080 -p 50000:50000 -m 4608M \
-v /home/data/jenkins:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/bin/docker:/usr/bin/docker \
-v /home/environmental:/home/environmental \
-v /home/maven_repository:/home/maven_repository \
-u root -e TZ=Asia/Shanghai jenkins/jenkins:lts-jdk17

/home/data/jenkins/secrets/initialAdminPassword

Credentials Binding	凭证管理
Git Parameter	git参数管理
Maven Integration	Maven
NodeJS Plugin	NodeJs插件
Publish Over SSH	通过SSH发布
Deploy to container	部署到容器插件
Localization:Chinese	汉化
Pipeline	流水线
Role-based Authorization Strategy	角色权限管理
git	git
build user varsVersion	获取构建的用户信息

十五、nexus

mkdir -p /home/data/nexus
chmod 777 /home/data/nexus

# 2. 启动 Nexus 容器
docker run -d --name nexus -m 4096M \
--restart always -p 22130:8081 \
-v /home/data/nexus:/nexus-data \
sonatype/nexus3

十六、gitlab

mkdir -p /home/data/gitlab/{data,logs,conf,backups}

docker run -d --restart always -m 12288M \
-p 9999:80 --name gitlab --shm-size 256m \
-v /home/data/gitlab/config:/etc/gitlab \
-v /home/data/gitlab/logs:/var/log/gitlab \
-v /home/data/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest

全部评论: 0

    我有话说: