我正在设置ci/cd解决方案。
约束如下:
Build needs to happen on machine A
Resulting image/container needs to be exported and transported to machine B
可选:Run the container again with a docker-compose file
我知道docker commit和repos,但遗憾的是这不是一个选项,因为结果服务器不能访问互联网。
这里是docker-compose.yaml;这不是一成不变的,可以根据需要进行更改
version: '2
我将尽力描述,但我有一个用creat应用程序构建的react应用程序,从这个应用程序我构建了一个对接图像。
dockerfile
FROM node:17-alpine
# set working directory
WORKDIR /app
# install app dependencies
#copies package.json and package-lock.json to Docker environment
COPY package.json ./
RUN apk add --no-cache --virtual .gyp python3 make g++ \
&
按照指南,我有安装顾问来监视本地码头容器。普罗米修斯正在抓取cAdvisor中的数据,这些数据在Grafana中可视化。
我正在尝试获得主机上运行的所有坞容器的磁盘使用情况。我想得到一个类似于运行后显示的输出
docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 21 10 1.18GB 489.9M
根据,可以将容器的stdout和stderr输出作为,这是一种可以被和理解的格式。
当我从命令行手动运行我的容器时,这很好用。例如,
docker run --log-driver=gelf --log-opt gelf-address=udp://localhost:12201 busybox echo This is my message.
我将向本地主机上运行的Graylog2服务器发送一条日志消息,该服务器在端口12201处配置了UDP输入侦听器。
现在,我想对使用相同的日志选项,根据文档,它是。但是,文档中除了json-file、syslog和none之外并没有提到任何日志格式,当
我有一个基于docker的系统,它由三个容器组成:
1. The official PHP container, modified with some additional pear libs
2. mysql:5.7
3: alterrebe/postfix-relay (a postfix container)
官方的php容器有一个链接到主机系统的代码库的卷,从理论上讲,这应该允许我在这个应用程序上工作,就像我在“本地”托管它一样。
但是,每次系统启动时,我都必须运行
docker-compose stop && docker-compose up -
当我试图在容器中运行vuejs应用程序时,我将面临一个与有关的问题。首先,我使用以下方法构建vuejs应用程序:
docker-compose docker-compose run node npm run build -- --mode=iso
因此,在项目根目录中成功地创建了一个文件夹“dist”,然后我尝试使用以下命令运行服务器:
docker-compose run e2e npm run serve
作为此命令的输出:
App running at:
Local: http://localhost:8080/
It seems you are running Vue CLI
我有一个docker组合文件,它可以很好地处理这些命令:
docker-compose up
docker-compose exec web /bin/bash
我遇到的问题是,当我想用--service-ports启动容器时,我不能再用docker-compose连接到容器。
docker-compose run --service-ports web
docker-compose exec web /bin/bash
ERROR: No container found for web_1
我也试过了:
docker-compose run --service-ports --name co
启动对接者撰写应用程序时,它会在每次启动时创建命名卷,然后再创建附加卷。这是正常的行为,因为它会创建增量卷,还是我的坞-撰写文件被破坏了?此外,在运行docker volume prune之后,它删除了两个未命名的卷
这是两次启动后的输出:
DRIVER VOLUME NAME
local 2b33c81e6e955ff36061f4120b7181c7efc7aebded2f87eaa7290027f1e7a725
local 74301eadc75018d6f7da76aec44bcf743e03261492