docker compose使用
参考https://docs.docker.com/compose、https://www.jianshu.com/p/2703bc0439c8
docker-compose.yml内容如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | version: '3' services: # java环境 #jdk8: # container_name: jdk8 # image: java:1.8 # restart: always #volumes: # - /usr/java/jdk1.8.0_202/:??? #mqtt中间件 mqtt: container_name: mqtt image: eclipse-mosquitto restart: always expose: - "1883" ports: - "1883:1883" - "9001:9001" volumes: - . /mosquitto : /mosquitto #mysql服务 mysql: container_name: mysql image: mysql:5.7 restart: always expose: - "3306" ports: - "3306:3306" volumes: - . /mysql/data/ : /var/lib/mysql/ - . /mysql/conf/ : /etc/mysql/mysql .conf.d/ environment: - MYSQL_ROOT_PASSWORD=123456 #tomcat服务 tomcat: container_name: tomcat image: tomcat:9.0 restart: always expose: - "8001" ports: - "8001:8080" - "8009:8009" - "8777:8777" volumes: - . /tomcat9/bin : /usr/local/tomcat/bin - . /tomcat9/conf : /usr/local/tomcat/conf - . /tomcat9/logs : /usr/local/tomcat/logs - . /tomcat9/webapps : /usr/local/tomcat/webapps - /usr/java/jdk1 .8.0_202/: /usr/java/jdk1 .8.0_202/ - ./.bashrc: /root/ .bashrc #设置java home没用欸 environment: - JAVA_HOME= /usr/java/jdk1 .8.0_202/ # - JRE_HOME=${JAVA_HOME}/jre # - CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib # - PATH=${JAVA_HOME}/bin:$PATH depends_on: #links: - mysql - mqtt |
1.注意tomcat容器内部连接mysql、mqtt时,不能使用127.0.0.1(因为不同容器网络隔离了),要直接用depends_on里面的名称(别名)
2.各个容器如果要按顺序启动,可使用wait-for-it(参考https://www.cnblogs.com/wangmo/p/13042925.html)
启动相关命令如下
1 2 3 4 5 6 7 | #创建并运行容器,-d 表示后台执行(首次运行可以docker-compose,可以看到运行日志,确定没问题了再-d) docker-compose up -d #停止 docker-compose stop #其他命令详见docker-compose --help |
查看运行情况(主要是 mysql、mqtt、tomcat)
最终形成的目录如下
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律