Tag:

Docker:是否有可能使两个Docker容器logging在同一个文件上?

我有两个Dokcer容器 。 每个容器的日志都写在文件a.txt中 ContainerA – > /VolumeA/a.txt ContainerB – > /VolumeB/a.txt 我想统一在相同的文件和相同的日志logging,所以我打算为这两个容器装载相同的SharedVolume ,并输出相同的a.txt文件的日志: Intented Result :VolumeA OR VolumeB —> /SharedVolume/a.txt 我的问题是,不知道是否每个容器, 将在日志logging结束时擦除或写入 。 当然,我的目的是每次都在文件末尾find一种方法来进行日志logging。 另外我没有并发访问的问题 ,因为ContainerA始终在ContainerB之前进行日志logging build议?

Docker卷是特定于计算机的

我是Docker Swarm的新手。 据我所知,Docker Swarm允许你从集群中抽象出来。 意味着你不关心硬件容器的部署。 另一方面,在Docker中处理数据库的标准方法是在Docker容器之外写入数据(以避免写时复制行为)。 这是通过挂载一个卷并写入数据库相关的数据来实现的。 这里最重要的是Volumes机器特定的? Docker和Docker Swarm是否足够聪明,能够在需要的机器上安装卷? 例: 我有3台机器和3个微服务/容器。 所有这些都通过Docker Swarm进行部署。 只有一个微服务/容器必须连接到数据库。 所以我只需要在一台机器上安装卷 。 但在哪?

泊坞窗图像正在运行,但网页错误 – docker

我有一个基本的Django项目,我试图让它通过docker在本地运行。 我有docker文件。 我build立docker形象。 我跑了docker的形象。 它正在运行,但我的网页在屏幕上显示一个错误,因为它没有连接到docker服务器…这是我有: docker文件: FROM python:3 WORKDIR general COPY requirements.txt ./ EXPOSE 8000 RUN pip install -r requirements.txt COPY . . CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"] 这是我如何build立和运行这个项目: omars-mbp:split omarjandali$ docker build -t splitbeta/testing2 . Sending build context to Docker daemon 223.7kB Step 1/7 : FROM python:3 —> 79e1dc9af1c1 Step 2/7 : WORKDIR general […]

泊坞窗。 MySQL映像。 无法更改my.cnf文件

我有这样一个docker-compose.yml : database: container_name: test_db image: mysql:5.7 volumes: – ./docker/my.cnf:/etc/my.cnf environment: – "MYSQL_ROOT_PASSWORD=root" – "MYSQL_DATABASE=test_db" ports: – "3306:3306" volumes: – test_db_data:/var/lib/mysql volumes: test_db_data: 我想编辑sql_mode 。 ./docker/my.cnf包含: [mysqld] sql_mode="" 但是当我从本地机器连接到数据库并运行SELECT @@sql_mode; 我收到: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 我究竟做错了什么?

docker ERR_NAME_NOT_RESOLVED http ajax

我有3个简单的微服务(mysql,apirest,gui),我开始使用docker-compose: version: '3.2' services: mysql: image: mysql/mysql-server:5.6 container_name: mysql restart: always volumes: – mysql:/var/lib/mysql/data ports: – "3306:3306" networks: – mynetwork deploy: mode: replicated replicas: 1 environment: – MYSQL_ROOT_PASSWORD=mypwd – MYSQL_USER=myuser – MYSQL_PASSWORD=myuserpwd – MYSQL_DATABASE=my-db apirest: image: …..apirest:latest container_name: apirest restart: always volumes: – apirest:/apirest/tmp ports: – "30000:3000" networks: – mynetwork deploy: mode: replicated replicas: 2 […]

docker-compose up不会创build最新的标签,或者docker版本控制是如何工作的

情况: 我已经从gitlab克隆现有的代码到我的本地机器。 然后我做了: docker-compose -f env/docker-compose.base.yml -f env/dev/docker-compose.yml up -d 那么我有一个标签local的新形象。 然后我在Dockerfile中改变一些东西,然后把代码推到gitlab。 然后我manuelly删除图像: docker rmi -f image_hash 然后第一个命令再次重build新的图像: docker-compose -f env/docker-compose.base.yml -f env/dev/docker-compose.yml up -d 那么我有标签local新形象。 (而不是latest ,但为什么?) 那么我想要推动这个形象。 我推了它。 然后在亚马逊ECR,我看到与标签“本地”的形象..:/ 我真的很困惑,你们如何处理版本化docker图像的stream程? 我在登台服务器上有一个脚本,用于最新的图像。

docker –mount错误:ContainerSpec:“–mount”不是有效的存储库/标记

我想使用一个docker群节点的音量,所以我想翻译这个使用音量的无swarm命令: docker run –name dev_db -v /tmp/postgres:/var/lib/postgresql/data -d postgres 对这个swarm命令: docker service create —-mount 'type=bind,src=/tmp/postgres,dst=/var/lib/postgresql/data,readonly' -—name dev -d -e contraint:node==/swarm1/ postgres Error response from daemon: rpc error: code = InvalidArgument desc = ContainerSpec: "—-mount" is not a valid repository/tag 问题是,我认为AFAIK也许我错了,但群不接受量,所以我想出了这个–mount命令,但它也不接受。 任何帮助表示赞赏。

docker工人运行mysql客户端运行mysql容器

我只是进入docker,并有一个简单的MySQL 5.5设置使用官方形象 。 这是我的相关文件。 #Dockerfile FROM mysql:5.5 ENV MYSQL_ROOT_PASSWORD password #docker-compose.yml db: build: . 现在我运行docker-compose build然后是docker-compose up ,它将提供以下输出 db_1 | 150828 14:04:17 [Note] mysqld: ready for connections. db_1 | Version: '5.5.45' socket: '/tmp/mysql.sock' port: 3306 MySQL Community Server (GPL) 现在在另一个terminal上运行docker-compose run db bash并进入bash shell。 但在这个shell中,如果我尝试连接mysql客户端,我得到一个错误。 root@94a43b1f5be0:/# mysql -u root -p ERROR 2002 (HY000): Can't connect […]

Docker Toolbox Windowslogin到quay.io

当我尝试login到我的quay.io帐户使用docker login quay.io它要求用户名,但不让我input任何东西,并挂起。 做一些研究似乎你现在必须在选项参数中传递这些值。 所以我试图docker login -u me -p secret -e my@email.com quay.io ,我得到了 docker:“login”最多需要1个参数 用法:dockerlogin[选项] [服务器] WTF? 这不是我用它吗?! 有没有人有任何想法,我能做些什么来得到这个工作? 我能够成功login到docker hub帐户上面的选项,没有servername,但如果我添加servername,我得到这个错误。

如何pipe理与造船厂的许多主机

我正在尝试使用造船厂,而且我试图在一个用户界面中pipe理许多不同的主机。 但是我找不到让造船厂使用现有群集令牌的方法。 有没有办法将主机添加到造船厂,或只有一个主机? 谢谢。