小编Wil*_*bok的帖子

与docker-ce和docker-ee相关的docker.io是什么?

以前,要安装docker我会用

apt-get install docker.io
Run Code Online (Sandbox Code Playgroud)

但是,我最近注意到安装docker的文档,它使用docker-ce.我试图找到两者之间的区别,但是已经空了.与docker-ce相关的docker.io是什么?

ubuntu apt-get docker ubuntu-16.04

72
推荐指数
4
解决办法
4万
查看次数

Docker-compose.yml文件构建一个基本图像,然后基于它的孩子?

为了澄清,当我说基本图像时,我的意思是具有所有常见配置的父图像,因此基于它的子项不需要单独下载依赖项.

根据我的理解,docker-compose.yml文件是运行时配置,而Dockerfiles是构建时配置.但是,有一个build使用docker-compose 的选项,我想知道如何使用它来构建基本图像.

截至目前,我使用一个运行其他shellcript的shellcript.一个人构建我的所有图像,从它创建的基本图像.另一个将它们作为具有必要配置的容器运行.但是,基本映像永远不会作为容器运行.

目前,我希望将shellcript改成docker-compose文件,如下所示:

echo "Creating docker network net1"
docker network create net1

echo "Running api as a container with port 5000 exposed on net1"
docker run --name api_cntr --net net1 -d -p 5000:5000 api_img

echo "Running redis service with port 6379 exposed on net1"
docker run --name message_service --net net1 -p 6379:6379 -d redis

echo "Running celery worker on net1"
docker run --name celery_worker1 --net net1 -d celery_worker_img

echo "Running flower HUD on net1 with port …
Run Code Online (Sandbox Code Playgroud)

docker dockerfile docker-compose docker-stack

9
推荐指数
4
解决办法
7626
查看次数

如何让两个Kubernetes服务相互交谈?

目前,我在K8s服务中使用K8s API pod,该服务连接到K8s Redis服务,其中有K8s pod.问题是,我使用NodePort意味着BOTH暴露给公众.我只希望API可以访问公众.问题是如果我将Redis服务不公开,API就无法看到它.有没有办法连接两个服务而不向公众公开?

这是我的API服务yaml:

apiVersion: v1
kind: Service
metadata:
   name: app-api-svc
spec:
   selector:
     app: app-api
     tier: api
   ports:
     - protocol: TCP
       port: 5000
       nodePort: 30400
   type: NodePort
Run Code Online (Sandbox Code Playgroud)

这是我的Redis服务yaml:

apiVersion: v1
kind: Service
metadata:
   name: app-api-redis-svc
spec:
   selector:
     app: app-api-redis
     tier: celery_broker
   ports:
     - protocol: TCP
       port: 6379
       nodePort: 30537
   type: NodePort
Run Code Online (Sandbox Code Playgroud)

cluster-computing kubernetes kubectl

7
推荐指数
2
解决办法
5267
查看次数

在 shellscript 上使用 docker-compose 文件版本 3 的优势?

我创建 docker-compose.yml 的最初原因是为了利用诸如build:depends-on:制作一个文件来构建我的所有图像并在容器中运行它们。但是,我注意到版本 3 贬低了大多数这些函数,我很好奇为什么我会使用它来构建 shellscript。

这是当前运行我所有容器的 shellscript(我假设这是版本 3 docker-compose 文件将替换的内容,如果我要使用它):

echo "Creating docker network net1"
docker network create net1

echo "Running api as a container with port 5000 exposed on net1"
docker run --name api_cntr --net net1 -d -p 5000:5000 api_img

echo "Running redis service with port 6379 exposed on net1"
docker run --name message_service --net net1 -p 6379:6379 -d redis

echo "Running celery worker on net1"
docker run --name celery_worker1 --net net1 -d celery_worker_img …
Run Code Online (Sandbox Code Playgroud)

docker dockerfile docker-compose docker-swarm docker-stack

5
推荐指数
1
解决办法
606
查看次数