docker

您所在的位置:网站首页 docker-compose配置日志 docker

docker

2023-05-21 05:28| 来源: 网络整理| 查看: 265

下载docker-compose

1.1、背景

之前运行一个镜像,需要添加大量的参数 可以通过Docker-Compose编写这些参数 Docker-Compose可以帮助我们批量的管理容器 只需要通过一个docker-compose.yml文件去维护即可

1.2、下载Docker-compose

1、去github官网下载docker-compose,下载2.2.2版本的docker-compose github.com/docker/comp… 2、将下载的文件上传到宿主机器上 3、需要将Docker-compose文件的名称修改一下,给予docker-compose文件一个可执行的权限 mv docker-compose-linux-x86_64 docker-compose chmod 777 docker-compose 4、方便后期操作,配置一个环境变量 #将docker-compose文件移入到了 /usr/local/bin,修改/etc/profile文件,给/usr/local/bin配置到PATH中 mv docker-compse /usr/local/bin vi /etc/profile #### export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin #### source /etc/profile 5、测试一下 ##在任意目录下输入docker-compose命令

docker-compose管理mysql和tomcat容器

2.1、docker-compose.yml文件介绍

yml文件以key:value方式来指定配置信息 多个配置信息以换行+缩进的方式来区分 在docker-compose文件中,不要使用制表符 tab键

2.2、docker-compose文件示例

version: 'v2.2.2' services: mysql: # 服务名称 restart: always #代表只要docker启动,那么这个容器就跟着一起启动 image: mysql:5.7 #指定镜像路径 container_name: mysql_componse #指定镜像名称 ports: - 3306:3306 #指定端口号映的射 environment: MYSQL_ROOT_PASSWORD: root #指定mysql的root用户登陆密码 TZ: Asia/Beijing #指定时区 volumes: - /opt/docker_volumes/mysql_data:/var/lib/mysql #映射数据卷 tomcat: restart: always image: tomcat:8.5.38 container_name: tomcat_compose ports: - 8080:8080 environment: TZ: Asia/Beijing volumes: - /opt/docker_volumes/tomcat_webapps:/usr/local/tomcat/webapps - /opt/docker_volumes/tomcat_logs:/usr/local/tomcat/logs

2.3、使用docker-compose命令管理容器

前提:在使用docker-compose的命令时,默认回在当前目录下找docker-compose.yml文件

基于docker-compose.yml启动管理的容器

docker-compose up -d

关闭并删除容器

docker-compose down

开启|关闭|重启已经存在的由docker-compose维护的容器

docker-compose startstoprestart

查看由docker-compose管理的容器

docker-compose ps

查看日志

docker-compose logs -f

docker-compose配置Dockerfile使用

3.1、介绍

使用docker-compose.yml文件以及Dockerfile文件在生成自定义镜像的同时启动当前镜像,并且由docker-compose去管理容器

3.2、还是以go_web_demo 为例子构建一个自定义镜像和容器服务(项目代码在第二期有)

docker-compose.yml文件

version: 'v2.2.2' services: go_web_demo_compose: restart: always build: context: ../ dockerfile: Dockerfile image: go_web_demo:1.0.1 container_name: go_web_demo_compose ports: - 8088:8088 environment: TZ: Asia/Beijing

Dockerfile文件

FROM golang:alpine AS builder # 为我们的镜像设置必要的环境变量 ENV GO111MODULE=on \ CGO_ENABLED=0 \ GOOS=linux \ GOARCH=amd64 # 移动到工作目录:/build WORKDIR /build # 将代码复制到容器中 COPY . . # 将我们的代码编译成二进制可执行文件 app RUN go build -o app . ################### # 接下来创建一个小镜像 ################### FROM scratch # 从builder镜像中把/dist/app 拷贝到当前目录 COPY --from=builder /build/app / # 需要运行的命令 ENTRYPOINT ["/app"]

运行自定义镜像

#可以直接启动基于docker-compose.yml以及Dockerfile文件构建的自定义镜像 docker-compose up -d #如果自定义镜像不存在,会帮助我们构建出自定义镜像,如果自定义镜像已经存在,会直接运行这个自定义镜像 #重新构建自定镜像 docker-compose build #运行前,重新构建 docker-compose up -d --build


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3