docker-compose 安装

官方地址github

Linux 下安装

sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

要安装其他版本的 Compose,请替换 1.29.1

将可执行权限应用给docker-compose

sudo chmod +x /usr/local/bin/docker-compose

创建软连接,在/usr/bin 下,这样可以直接访问到命令

sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

查看版本,确定是否成功安装配置。

docker-compose 简介

Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。

也就是可以编排容器。

docker-compose 编排容器

首先我们准备了一个java程序,简单的helloworld

将其放在目录下,该目录还有docker-compose.yml 的配置文件,以及将jar包打包成镜像的Dockerfile,还有我们即将用到的nginx配置,这个配置是从另外一个nginx容器中导出的

# 将运行中的ng容器中的/etc/nginx/ 文件夹 拷贝至当前文件夹下的nginx/conf
docker cp ng:/etc/nginx/ ./nginx/conf

我们先配置Dockerfile,比较简单

FROM java:8
VOLUME /tmpWORKDIR /project/demoADD ./demo-0.0.1-SNAPSHOT.jar ./app.jarENTRYPOINT ["java","-jar" ,"./app.jar"]

接着配置docker-compose.yml

version: '3'
# 服务---需要构建的容器
services:docker-demo:# 表示使用当前目录下的Dockerfile 进行构建镜像build: ./# 映射端口ports:- "9090:8080"nginx:# 使用nginx镜像image: nginx# 挂载 将我们当前目录的 ./nginx/conf/nginx 挂载到 容器中的 /etc/nginxvolumes:- ./nginx/conf/nginx:/etc/nginx# 链接  这样 在容器中就可以使用app进行于docker-demo这个容器通信 相当于ip映射links:- "docker-demo:app"# 映射端口ports:- "80:80"

然后我们使用下面命令构建镜像并启动容器

# 构建镜像并启动容器   -d 后台启动
docker-compose up -d# 查看日志
docker-compse logs 

nginx.conf

location /hello {# 需要使用app的内部端口proxy_pass http://app:8080;}

nginx 代理成功

docker-conpose 入门相关推荐

  1. 《Docker技术入门与实战》——2.4 本章小结

    本节书摘来自华章计算机<Docker技术入门与实战>一书中的第2章,第2.4节,作者:杨保华,戴王剑,曹亚仑著, 更多章节内容可以访问云栖社区"华章计算机"公众号查看. ...

  2. Docker从入门到实践

    一般说来 SPA 的项目我们只要启一个静态文件 Server 就可以了,但是针对传统项目就不一样了,一个项目会依赖很多服务端程序.之前我们的开发模式是在一台开发机上部署开发环境,所有人都在这台开发机上 ...

  3. 《Docker技术入门与实战》——2.3 本书环境介绍

    本节书摘来自华章计算机<Docker技术入门与实战>一书中的第2章,第2.3节,作者:杨保华,戴王剑,曹亚仑著, 更多章节内容可以访问云栖社区"华章计算机"公众号查看. ...

  4. Docker新手入门:基本用法

    Docker新手入门:基本用法 1.Docker简介 1.1 第一本Docker书 工作中不断碰到Docker,今天终于算是正式开始学习了.在挑选系统学习Docker以及虚拟化技术的书籍时还碰到了不少 ...

  5. Docker快速入门实践-纯干货文章

    Docker快速入门实践-老男孩高级架构师课程内容,如果细看还能发现讲解视频呦!小伙伴们赶紧猛戳吧! 老男孩高级架构师内部学员实践文档分享! Docker快速入门实践-纯干货文章 老男孩教育2016启 ...

  6. docker快速入门_Docker标签快速入门

    docker快速入门 by Shubheksha 通过Shubheksha Docker标签快速入门 (A quick introduction to Docker tags) If you've w ...

  7. 《 Docker 技术入门与实战 》读书笔记 ( CentOS 安装 Docker )

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. PS :个人所有读书笔记只记录个人想要的内容,很可能原书大量内容没有纳入笔记中... ... 以下全 ...

  8. Docker 精通之入门

    Docker 精通系列 Docker 精通之入门 Docker 精通之微服务 Docker 精通之常用命令 Docker 精通之 Dockerfile 2013年发布至今, Docker 一直广受瞩目 ...

  9. Docker从入门到实战(四)

    一步一步走,写小白都能看懂的文章,将持续更新中,敬请期待! Docker从入门到实战(四) Docker基础 一:Docker基本操作 一般情况安装Docker之后系统会自动创建一个Docker的用户 ...

  10. MinIO Docker 快速入门 ​​​​​​​

    MinIO Docker 快速入门 前提条件 您的机器已经安装docker. 从 这里下载相关软件. 在Docker中运行MinIO单点模式. MinIO 需要一个持久卷来存储配置和应用数据.不过, ...

最新文章

  1. 构建nodejs环境
  2. 计算机网络本地连接被禁用说明什么,win10系统网络被禁用重新启用本地连接的设置技巧...
  3. nodejs随记04
  4. java----IO和NIO的区别
  5. windows phone 学习(4)
  6. java垃圾回收机制的理解
  7. 所有关于php上传,关于php文件上传
  8. Android串口示波器,解读一个超赞的开源串口虚拟示波器项目
  9. win7系统下装ubuntu系统
  10. MFC模拟360悬浮窗加速球窗口
  11. 计算机mac地址设置路由器,路由器设置:如何查看电脑/手机的MAC地址?
  12. 【数据库 第n次与MySQL较劲】记录一个据说有初雪的夜晚的breakdown point
  13. Kubernetes—Pod
  14. JFreechart中文在AIX下显示方框解决方法
  15. Ansible详解(一)
  16. 2021年C/C++Linux服务器开发/后台架构师知识体系整理(持续更新中)
  17. Xcode Instruments之概述
  18. 喜马拉雅转道港交所:上半年亏损3个亿,负债200亿元,现金流紧张
  19. 合作伙伴、客户与微软一起,成为数字化转型“三胞胎”
  20. socket中的read返回0

热门文章

  1. 使用Python-Flask框架开发Web网站系列课程(一)构建项目
  2. Lineageos14 20180525更新
  3. 路由器DHCP和DHCP中继的配置
  4. Spring实战——通过Java代码装配bean
  5. 在PHP中利用wsdl创建标准webservice
  6. centos更改MySQL数据库目录位置
  7. ubuntu系统设置开机自启动
  8. PHP学习——定界符格式引起的错误
  9. 瓦尔都窗前的一瞥 ①
  10. PyCharm 中为 Python 项目添加.gitignore文件