常用软件安装教程(Docker版)

19 阅读5分钟

操作系统信息 centos7.6

1、安装向量数据库 Milvus

1、执行下面这条命令下载docker-compose文件
或者是手动下载docker-compose文件:github.com/milvus-io/m…

wget https://github.com/milvus-io/milvus/releases/download/v2.5.12/milvus-standalone-docker-compose.yml

2、再文件所在目录执行命令即可

docker-compose -f milvus-standalone-docker-compose.yml up -d

3、看到如下页面就算是部署成功

http://127.0.0.1:9091/webui/

2、安装Tomcat

1、镜像拉取

docker pull tomcat:8.5.46

2、容器启动

docker run -d --name tomcat \
  -p 8080:8080 \
  -v /opt/tomcat/webapps:/opt/mountdata/tomcat/webapps \
  -v /opt/tomcat/logs:/opt/mountdata/tomcat/logs \
  -v /opt/tomcat/conf:/opt/mountdata/tomcat/conf \
  tomcat:8.5.46

3、安装minio

1、镜像拉取

docker pull minio:latest

2、容器启动和挂载

docker run -d --name minio \
  -p 9000:9000 \
  -p 9001:9001 \
  -restart=always \
  -v /opt/mountdata/minio/data:/data \
  -v /opt/mountdata/minio/config:/root/.minio \
  -e MINIO_ROOT_USER=admin \
  -e MINIO_ROOT_PASSWORD=admin123 \
  minio/minio server /data --console-address ":9001"

docker componse 文件配置

version: '3.9'

services:
  minio:
    image: minio/minio
    container_name: minio
    restart: always
    ports:
      - "9000:9000"   # API端口
      - "9001:9001"   # 控制台端口
    volumes:
      - /opt/mountdata/minio/data:/data        # 数据持久化
      - /opt/mountdata/minio/config:/root/.minio  # 配置持久化
    environment:
      MINIO_ROOT_USER: "admin"
      MINIO_ROOT_PASSWORD: "admin123"
    command: server /data --console-address ":9001"

4、安装RocketMQ

1、镜像拉取

docker pull apache/rocketmq:4.9.6

2、容器启动

启动mqnamesrv

docker run -d \
  --name rmqnamesrv \
  -p 9876:9876 \
  -v /opt/mountdata/rocketmq/rmqnamesrv/logs:/root/logs \
  -v /opt/mountdata/rocketmq/rmqnamesrv/store:/root/store \
  apache/rocketmq:4.9.6 \
  sh mqnamesrv

启动broker

docker run -d \
  --name rmqbroker \
  -p 10911:10911 \
  -p 10909:10909 \
  -v /opt/mountdata/rocketmq/rmqbroker/logs:/root/logs \
  -v /opt/mountdata/rocketmq/rmqbroker/store:/root/store \
  --env NAMESRV_ADDR="rmqnamesrv:9876" \
  --link rmqnamesrv \
  apache/rocketmq:4.9.6 \
  sh mqbroker -c /home/rocketmq/rocketmq-4.9.6/conf/broker.conf

docker componse 文件配置

version: '3.5'

services:
  namesrv:
    image: apache/rocketmq:4.9.6
    container_name: rmqnamesrv
    ports:
      - "9876:9876"
    volumes:
      - /opt/rocketmq/namesrv/logs:/root/logs
      - /opt/rocketmq/namesrv/store:/root/store
    command: sh mqnamesrv
    restart: always

  broker:
    image: apache/rocketmq:4.9.6
    container_name: rmqbroker
    ports:
      - "10911:10911"
      - "10909:10909"
    depends_on:
      - namesrv
    environment:
      NAMESRV_ADDR: "namesrv:9876"
    volumes:
      - /opt/rocketmq/broker/logs:/root/logs
      - /opt/rocketmq/broker/store:/root/store
      - /opt/rocketmq/broker/conf/broker.conf:/home/rocketmq/rocketmq-5.1.4/conf/broker.conf
    command: sh mqbroker -c /home/rocketmq/rocketmq-5.1.4/conf/broker.conf
    restart: always

监控RocketMq-console

docker run -d \
  --name rocketmq-console \
  -p 8080:8080 \
  -e "JAVA_OPTS=-Drocketmq.namesrv.addr=rmqnamesrv:9876" \
  --link rmqnamesrv \
  styletang/rocketmq-console-ng

5、安装Redis

1、镜像拉取

docker pull redis7.0.1

2、容器运行

docker run -d \
  --name redis-prod \
  --memory 1g --memory-swap 1g \
  -p 6379:6379 \
  -v /opt/mountdata/redis/data:/data \
  -v /opt/mountdata/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf \
  redis:7.0.1 \
  redis-server /usr/local/etc/redis/redis.conf

docker componse 文件配置

version: '3.9'

services:
  redis:
    image: redis:7.0.1
    container_name: redis
    restart: always
    ports:
      - "6379:6379"
    volumes:
      # 持久化数据目录
      - /opt/mountdata/redis:/data
      # 配置文件挂载
      - /opt/mountdata/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf
    command: redis-server /usr/local/etc/redis/redis.conf

6、安装nginx

1、镜像拉取

docker pull nginx:1.22.0

2、容器启动

宿主机目录创建

sudo mkdir -p /opt/mountdata/nginx/{conf.d,certs,html,logs}

容器启动前先把镜像的目录先拷贝到宿主机

# 提取主配置文件
docker run --rm nginx:1.22.0 cat /etc/nginx/nginx.conf > /opt/mountdata/nginx/nginx.conf
# 提取默认server配置
docker run --rm nginx:1.22.0 cat /etc/nginx/conf.d/default.conf > /opt/mountdata/nginx/conf.d/default.conf
# 提取mime.types文件(可选)
docker run --rm nginx:1.22.0 cat /etc/nginx/mime.types > /opt/mountdata/nginx/mime.types

文件权限校验

sudo chown -R 101:101 /opt/mountdata/nginx/logs  # Nginx用户UID
sudo chmod -R 755 /opt/mountdata/nginx
sudo chmod 644 /opt/mountdata/nginx/nginx.conf
sudo chmod 644 /opt/mountdata/nginx/conf.d/default.conf

启动这个容器

docker run -d --name nginx-prod \
  -p 80:80 \
  -p 5000:5000 \
  -p 5004:5004 \
  -p 5002:5002 \
  -p 5003:5003 \
  -p 5001:5001 \
  -p 5100:5100 \
  -p 7100:7100 \
  -p 443:443 \
  -v /opt/mountdata/nginx/nginx.conf:/etc/nginx/nginx.conf:ro \
  -v /opt/mountdata/nginx/mime.types:/etc/nginx/mime.types:ro \
  -v /opt/mountdata/nginx/conf.d:/etc/nginx/conf.d:ro \
  -v /opt/mountdata/nginx/certs:/etc/nginx/certs:ro \
  -v /opt/mountdata/nginx/html:/usr/share/nginx/html:ro \
  -v /opt/mountdata/nginx/logs:/var/log/nginx \
  nginx:1.22.0

3、如果修改了配置文件,环境怎么刷新

检测配置文件是否有误

docker exec nginx-prod nginx -t

重新加载nginx

docker exec nginx-prod nginx -s reload

7、安装mysql5.7

1、镜像拉取

docker pull mysql:5.7

2、容器启动

docker run -d \
  --name mysql-prod \
  --restart=always \
  -p 3306:3306 \
  -e MYSQL_ROOT_PASSWORD=LLyyqq04080811... \
  -e TZ=Asia/Shanghai \
  -v /opt/mysql/data:/var/lib/mysql \
  -v /opt/mysql/logs:/var/log/mysql \
  -v /opt/mysql/conf/my.cnf:/etc/mysql/my.cnf \
  mysql:5.7 \
  --character-set-server=utf8mb4 \
  --collation-server=utf8mb4_unicode_ci \
  --explicit_defaults_for_timestamp=1

8、安装Nacos

1、镜像拉取

docker pull nacos/nacos-server:v2.2.3

2、提前拷贝镜像里面的配置文件

宿主机目录创建
mkdir -p /opt/mountdata/nacos/{conf,logs,data}

临时容器启动
docker run -d --name nacos-tmp nacos/nacos-server:v2.2.3
拷贝文件到宿主机
docker cp nacos-tmp:/home/nacos/conf /opt/mountdata/nacos/
docker cp nacos-tmp:/home/nacos/logs /opt/mountdata/nacos/
docker cp nacos-tmp:/home/nacos/data /opt/mountdata/nacos/
最后删除临时容器
docker rm -f nacos-tmp

3、启动Nacos容器

docker run -d \
--name nacos-prod \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
-e MODE=standalone \
-v /opt/mountdata/nacos/conf:/home/nacos/conf \
-v /opt/mountdata/nacos/logs:/home/nacos/logs \
-v /opt/mountdata/nacos/data:/home/nacos/data \
nacos/nacos-server:v2.2.3

9、安装容器监控工具Portainer

1、镜像拉取

docker pull portainer/portainer-ce

2、提前把docker里面的data目录内容copy到/opt/mountdata/portainer/portainer_data

docker cp portainer:/data/. /opt/mountdata/portainer/portainer_data/

3、启动docker容器

docker run -d \
  --name portainer-prod \
  -p 9000:9000 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /opt/mountdata/portainer/portainer_data:/data \
  --restart=always \
  portainer/portainer-ce

10、安装MongoDB

1、创建MongoDB数据挂载目录

mkdir -p /opt/mountdata/mongodb/data

2、镜像拉取

docker pull mkdir -p /opt/mountdata/mongodb/data

3、容器启动

docker run -d \
  --name mongodb-prod \
  -p 27017:27017 \
  -v /opt/mountdata/mongodb/data:/data/db \
  --restart=always \
  mongo:6.0