docker部署常用中间件及常用命令

By | 2024 年 5 月 13 日

命令解释

-d # 指定容器在后台运行
-p {a}:{b} # 端口映射,a宿主机使用端口,b容器内使用端口 e.g.: -p 80:80
-v {xxxx}:{yyyy} # 文件目录映射 xxxx宿主机目录,yyyy容器内目录 e.g.: -v /usr/local/mysql/log:/var/log/mysql
-e {key}={value} # 设置应用的环境变量 环境变量来源于应用所设 e.g.: -e RABBITMQ_DEFAULT_USER=user 将环境变量"RABBITMQ_DEFAULT_USER"设置为"user"
--restart=always # 开机启动 
--name  # 指定了容器名称 e.g.: --name redis 将容器命名为"redis"
--hostname # 指定主机名
--rm #表示退出容器时会自动将其删除
--privileged=true #在容器内获取root权限

常用命令

docker exec -it {name} /bin/bash  # 进入容器 "name" 为容器名称或容器id
docker cp /usr/local/vendor.js  {containerId}:/usr/src/app/_site  # 将文件复制到容器

Jenkins

docker run --restart=always  -u root   -d   -p 8080:8080   -p 50000:50000   -v jenkins-data:/var/jenkins_home   -v /var/run/docker.sock:/var/run/docker.sock   --name jenkins   jenkinsci/blueocean

2024/12/23
docker run --restart=always  -u root   -d   -p 8080:8080   -p 50000:50000   -v jenkins-data:/var/jenkins_home   -v /var/run/docker.sock:/var/run/docker.sock   --name jenkins2   jenkins/jenkins:2.426.1
# 进入容器命令行
apt-get update
apt-get install -y docker.io
docker login -u {username} -p {password} {harbor}

redis

docker run -p 6379:6379 --name redis --restart=always -d redis

mysql

docker run -p 3306:3306 --name mysql --restart=always --privileged=true -v /usr/local/mysql/log:/var/log/mysql -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/conf:/etc/mysql/conf.d -v /etc/localtime:/etc/localtime:ro -e MYSQL_ROOT_PASSWORD={PASSWORD} -d mysql:latest

gitlab

docker run  -itd   -p 80:80  -p 22:22  -p 443:443  -v /home/gitlab/etc:/etc/gitlab   -v /home/gitlab/log:/var/log/gitlab  -v /home/gitlab/opt:/var/opt/gitlab  --restart always  --privileged=true  --name gitlab  gitlab/gitlab-ce:15.11.13-ce.0
# 初始密码
cat /home/gitlab/initial_root_password

rabbitMq

# 15672--web页面地址 5672--应用连接端口
docker run -d -p 15672:15672 -p 5672:5672 -e RABBITMQ_DEFAULT_USER=user -e RABBITMQ_DEFAULT_PASS={PASSWORD} --restart=always --name rabbitmq rabbitmq:management 

nacos(ruoyi)

docker run \
 --name nacos-ruoyi \
 -p 8848:8848 \
 -p 9848:9848 \
 -p 9849:9849 \
 -e MODE=standalone \
 -e SPRING_DATASOURCE_PLATFORM=mysql \
 -e MYSQL_SERVICE_HOST={HOST/IP} \
 -e MYSQL_SERVICE_PORT=3306 \
 -e MYSQL_SERVICE_DB_NAME={DB_NAME} \
 -e MYSQL_SERVICE_USER={USER} \
 -e MYSQL_SERVICE_PASSWORD={PASSWORD} \
 -e MYSQL_SERVICE_DB_PARAM='characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true' \
 --restart=always -d \
 nacos/nacos-server:v2.2.0

ps:上述为mysql 8.* 版本,如果使用mysql 5.7可不添加MYSQL_SERVICE_DB_PARAM参数,使用默认MYSQL_SERVICE_DB_PARAM即可

stirling-pdf

docker run -d \
-p 8080:8080 \
-v /home/stirlingpdf/logs:/logs \
-e DOCKER_ENABLE_SECURITY=false \
-e LANGS=zh_CN \
–name stirling-pdf \
frooodle/s-pdf:0.46.2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注