当前位置: 首页 > news >正文

linux使用dockerCompose脚本化部署镜像

1.根据实际修改docker-compose.yml文件:

version: '3.5'
services:#mysql数据库脚本mysql:image: 镜像名:版本       #需要查看本地镜像进行填写。同下container_name: mysql   #容器名,同下restart: alwaysports:- 3306:3306           #第一个3306为主机开放的端口号,第二个是镜像端口号。同下volumes:- ./mysql/mydir:/mydir- ./mysql/data:/var/lib/mysql- ./mysql/conf/my.cnf:/etc/my.cnf- ./mysql/source:/docker-entrypoint-initdb.d/environment:MYSQL_ROOT_PASSWORD:密码networks:extnetwork:ipv4_address: 主机IP地址  #nacos服务脚本nacos:image: 镜像名/nacos-server:版本    container_name: nacosrestart: alwaysports:- 8848:8848environment:SPRING_DATASOURCE_PLATFORM: mysql #数据源平台 仅支持mysql或不保存emptyMODE: standaloneMYSQL_SERVICE_HOST: mysqlMYSQL_SERVICE_DB_NAME: nacos_configMYSQL_SERVICE_PORT: 3306MYSQL_SERVICE_USER: rootMYSQL_SERVICE_PASSWORD: 密码NACOS_APPLICATION_PORT: 8848JVM_XMS: 512mJVM_MMS: 256mJVM_XMN: 128mnetworks:extnetwork:ipv4_address:  主机IP地址depends_on:- mysql#seata服务脚本seata-server:image: 镜像名/seata-server:版本container_name: seata-serverrestart: alwaysports:- 9200:9200volumes:- ./seata-server/config:/root/seata-configenvironment:SEATA_IP: 118.195.175.86SEATA_CONFIG_NAME: file:/root/seata-config/registrySEATA_PORT: 9200networks:extnetwork:ipv4_address: 主机IP地址depends_on:- nacos#  rabbitmq脚本rabbitmq:image: 镜像:版本container_name: rabbitmqrestart: alwaysports:- 15672:15672- 5672:5672volumes:- ./rabbitmq/data:/var/lib/rabbitmqenvironment:RABBITMQ_DEFAULT_USER: adminRABBITMQ_DEFAULT_PASS: adminnetworks:extnetwork:ipv4_address: 主机IP地址#redis脚本redis:image: 镜像名:版本container_name: redisrestart: alwayscommand: redis-server --requirepass rootports:- 6379:6379volumes:- ./redis/data:/datanetworks:extnetwork:ipv4_address: 主机IP地址#MongoDB脚本mongodb:image: 镜像名:版本container_name: mongodbrestart: alwaysvolumes:- ./mongo/db:/data/db- ./mongo/log:/var/log/mongodbports:- 27017:27017# environment:#   MONGO_INITDB_ROOT_USERNAME: admin#   MONGO_INITDB_ROOT_PASSWORD: adminnetworks:extnetwork:ipv4_address: 主机IP地址#elasticsearch脚本elasticsearch:image: 镜像名:版本container_name: elasticsearchrestart: alwaysenvironment:- "cluster.name=elasticsearch" #设置集群名称为elasticsearch- "discovery.type=single-node" #以单一节点模式启动- "ES_JAVA_OPTS=-Xms512m -Xmx512m" #设置使用jvm内存大小volumes:- ./elasticsearch/plugins:/usr/share/elasticsearch/plugins #插件文件挂载- ./elasticsearch/logs:/usr/share/elasticsearch/logs #插件文件挂载      - ./elasticsearch/data:/usr/share/elasticsearch/data #数据文件挂载ports:- 19200:9200- 19300:9300networks:extnetwork:ipv4_address: 主机IP地址#kibana脚本kibana:image: 镜像名:版本container_name: kibanarestart: alwayslinks:- elasticsearch:es #可以用es这个域名访问elasticsearch服务depends_on:- elasticsearch #kibana在elasticsearch启动之后再启动environment:- "elasticsearch.hosts=http://es:19200" #设置访问elasticsearch的地址ports:- 15601:5601networks:extnetwork:ipv4_address: 主机IP地址#minio脚本     minio:image: 镜像/minio:版本container_name: minioports:- 9090:9000restart: alwayscommand: server /dataenvironment:MINIO_ACCESS_KEY: minioMINIO_SECRET_KEY: minio123 #大于等于8位logging:options:max-size: "50M" # 最大文件上传限制max-file: "10"driver: json-filevolumes:- ./minio/data:/data # 映射文件路径networks:extnetwork:ipv4_address: 主机IP地址#nginx脚本nginx:image: 镜像:版本container_name: nginxrestart: alwaysports:- 80:80privileged: truevolumes:- ./nginx/conf/proxy.conf:/etc/nginx/proxy.conf- ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf- ./nginx/conf/conf.d/:/etc/nginx/conf.d/- ./nginx/logs/:/etc/nginx/logs/- ./nginx/home/:/homenetworks:extnetwork:ipv4_address: 主机IP地址

2.创建挂载主目录并进入。(因为挂载目录为当前目录/镜像名)

3.将yml上传到挂载主目录并执行:

docker-compose up -d

相关文章:

  • 简单采用windows批处理命令批量合并命名安卓B站缓存视频
  • jenkins自动化部署详解
  • Tina-Linux -- 4. LVGL 8.3移植
  • 【全国青少年信息素养大赛算法创意初中组押题卷】
  • 防火墙最新技术汇总
  • 【学习笔记】后端(Ⅰ)—— NodeJS(Ⅱ)
  • Centos7.9上安装Oracle 11gR2 RAC 三节点(ASMlib管理asm磁盘)
  • Vue学习穿梭框Transfer组件
  • 贪心算法:划分字母区间
  • 包装类..
  • 如何彻底搞懂迭代器(Iterator)设计模式?
  • 反序列化漏洞(JBoss、apache log4、apache Shiro、JWT)Weblogic未授权访问、代码执行、任意上传
  • 《QT实用小工具·六十五》基于QPropertyAnimation实现的移动动画和控件覆盖
  • 内网安全之搭建ADCS证书服务
  • C++ 时间处理-从字符串中解析日期时间
  • ES6指北【2】—— 箭头函数
  • 《用数据讲故事》作者Cole N. Knaflic:消除一切无效的图表
  • 【附node操作实例】redis简明入门系列—字符串类型
  • chrome扩展demo1-小时钟
  • eclipse(luna)创建web工程
  • Java新版本的开发已正式进入轨道,版本号18.3
  • java中的hashCode
  • mysql 5.6 原生Online DDL解析
  • Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目
  • Python代码面试必读 - Data Structures and Algorithms in Python
  • React+TypeScript入门
  • Sequelize 中文文档 v4 - Getting started - 入门
  • 高性能JavaScript阅读简记(三)
  • 记一次和乔布斯合作最难忘的经历
  • 力扣(LeetCode)22
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • 探索 JS 中的模块化
  • 字符串匹配基础上
  • 《天龙八部3D》Unity技术方案揭秘
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • 移动端高清、多屏适配方案
  • ​ArcGIS Pro 如何批量删除字段
  • ![CDATA[ ]] 是什么东东
  • #07【面试问题整理】嵌入式软件工程师
  • #include<初见C语言之指针(5)>
  • #mysql 8.0 踩坑日记
  • #我与Java虚拟机的故事#连载18:JAVA成长之路
  • (2022 CVPR) Unbiased Teacher v2
  • (BFS)hdoj2377-Bus Pass
  • (C#)Windows Shell 外壳编程系列4 - 上下文菜单(iContextMenu)(二)嵌入菜单和执行命令...
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW
  • (二) Windows 下 Sublime Text 3 安装离线插件 Anaconda
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (附源码)ssm基于web技术的医务志愿者管理系统 毕业设计 100910
  • (新)网络工程师考点串讲与真题详解
  • .【机器学习】隐马尔可夫模型(Hidden Markov Model,HMM)
  • .gitignore文件---让git自动忽略指定文件
  • .net 8 发布了,试下微软最近强推的MAUI
  • .NET 回调、接口回调、 委托
  • .NET 将混合了多个不同平台(Windows Mac Linux)的文件 目录的路径格式化成同一个平台下的路径