Tag: 容器

不能在docker集装箱MariaDB

我需要在现有的Docker容器中运行MariaDB。 build设和安装工作很好,但是当Docker执行 RUN mysql < init.sql 加载我得到的数据库模式 Can't connect to MySQL server (111 Connection refused) 但是,当我运行容器并执行 docker exec -it silly_allen /bin/bash -c "mysql < init.sql" 它工作得很好。 可能是什么问题? 谢谢! 编辑:这是与数据库相关的Dockerfile的一部分。 FROM centos:7 WORKDIR /root … RUN echo "[mariadb]" >> /etc/yum.repos.d/MariaDB.repo RUN echo "name = MariaDB" >> /etc/yum.repos.d/MariaDB.repo RUN echo "baseurl = http://yum.mariadb.org/10.1/centos7-amd64" >> /etc/yum.repos.d/MariaDB.repo RUN echo […]

从主机访问容器的主机名

我有一些联合单个docker覆盖networking的docker集装箱。 在这个networking下,每个容器都通过主机名(容器)进行访问。 但我无法通过host-mashine(我的真实主机)的主机名访问容器。 如何通过我的真实机器的docker容器主机名访问容器?

docker集装箱不会自动启动泊坞群

我的系统像昨天一样崩溃,我一直无法恢复。 我没有设置这个,所以我不知道所有的细节,但请要求任何细节。 它曾经是在任何虚拟机重启系统会自动开始工作,但在这次崩溃后,它不再是: 这是我的docker info输出 Containers: 168 Running: 0 Paused: 0 Stopped: 168 Images: 241 Server Version: 1.12.2 Storage Driver: aufs Root Dir: /var/lib/docker/aufs Backing Filesystem: extfs Dirs: 1228 Dirperm1 Supported: true Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: overlay bridge host null Swarm: pending NodeID: bg8sh8m6zm5llezlmcw00nqx6 Is Manager: true ClusterID: 1wfvx3ze7tm1bb56a5zyk9xqs […]

如何从主机恢复MySQL转储到Docker容器

我确定这是一个重复的话题,但我根本无法完成:我喜欢在运行时将我的数据库转储恢复到MySQL容器,而无需修改docker-compose.yml文件。 Dockerfile FROM php:5.4.45-apache RUN apt-get update RUN docker-php-ext-install mysql mysqli 泊坞窗,compose.yml version: '2' services: php_service: container_name: my_php # Use Dockerfile in this dir to build the image build: . # Stop containers always after exiting. restart: always ports: # 'localhost' does not works from the host, but the IP of docker itself # (192.168.99.100 […]

康达在集装箱内的目的是什么?

我已经看到很多使用conda命令的dockerfiles例子。 还有预先build立的anaconda和miniconda容器。 我肯定错过了什么。 docker REPLACE virtualenv和conda? 我不应该在我的dockerfile中拥有所有的依赖关系吗? 我不明白从这里添加anaconda我得到了什么。 事实上,如果我不得不使用所有的miniconda包含的模块,我必须拉一个miniconda容器,这似乎使我的容器不必要地变大了。

用docker运行谷歌数据存储模拟器

我正在尝试与docker创build数据存储模拟器,并按照https://cloud.google.com/datastore/docs/tools/datastore-emulator 我还使用了云端SDK https://hub.docker.com/r/google/cloud-sdk/ 我能够创build模拟器并进行身份validation,但是当我尝试访问它throght localhost:8000 / datastore它给了我“未find”的回应, 我怎样才能访问数据存储数据? 我用来创build它的命令是: docker run -p 8000:8000 google/cloud-sdk gcloud beta emulators datastore start –project=pname –host-port localhost:8000 –no-store-on-disk

运行时,Kubectl不断重启容器

我目前正试图将我们公司的鱿鱼服务器转移到dockerized版本,我正在努力让它与Kubernetes合作。 我已经构build了一个Docker镜像,在运行“docker run”时运行得非常好。 完整的Docker运行命令是: sudo docker run -d -i -t –privileged –volume=/proc/sys/net/ipv4/ip_nonlocal_bind:/var/proc/sys/net/ipv4/ip_nonlocal_bind –net=host –cap-add=SYS_MODULE –cap-add=NET_ADMIN –cap-add=NET_RAW -v /dev:/dev -v /lib/modules:/lib/modules -p80:80 -p8080:8080 -p53:53/udp -p5353:5353/udp -p5666:5666/udp -p4500:4500/udp -p500:500/udp -p3306:3306 –name=edge crossense/edge:latest /bin/bash 当我尝试使用Kubernetes运行图像时,使用以下内容: kubectl run –image=crossense/edge:latest –port=80 –port=8080 –port=53 –port=5353 –port=5666 –port=4500 –port=500 –port=3306 edge 看起来像Kubernetes试图让容器启动和运行,但没有任何成功… $kubectl get po NAME READY REASON RESTARTS AGE edge-sz7wp 0/1 […]

不会压扁/压扁docker镜像会对registrycaching产生不利影响吗?

假设你有一个docker图像,并将其压平或压扁以减小尺寸。 这对于运行时工件是有利的,所以它们可以消耗最less的资源用于存储和推/拉。 但是我想知道在压缩图像进行存储时,是否在压缩(生成单个压扁的图层)和在容器registry部分发生的图层重用之间进行权衡。 下面是一个例子:假设你有一个图像,有几层 – 一个普通的老的Docker镜像 – 大小可能是500MB。 您可以使用压扁或压扁来将其压缩到一个大小为250 MB的单个图层中。 现在让我们假设你需要改变你的图像,创build一个版本2.版本2是在容器的最后一层的一个很小的改变,也许在CMD指令之前改变一个设置文件的名字。 在你将一堆扩展图层推送到registry的情况下,当你推送这个新的图像时,只有不同的最后一层需要被存储在registry的caching中,这可能意味着总的大小(对于初始图像和你的新版本2图像一起)将会是,比如说550 MB或者什么,取决于最后一层发生了变化。 与此同时,在平铺的情况下,您的新版本2图像只是一些全新的单层图像,与原始容器没有共同的历史logging。 (也许你的本地 Docker实例可以看到与展平相关的图层历史logging,但是registry没有这个)。 在这种情况下,您必须在registry中存储大约500 MB的内容:第一个和第二个版本的图像每个需要250 MB。 显然,只要我们第三次这样做,平坦图像的总空间实际上大于对扩展图像的增量变化的空间。 有什么我错过了这个工作的方式吗? 它build议你只想在将容器运送到最终目的地之前执行压扁操作,但在存储在registry中时通常不希望进行压扁操作。 可能会出现这样的情况:基础图像太大,扁平化会导致尺寸缩小,这是值得的,但是我想了解一般情况,而我找不到讨论图层扁平化的特定方面的文档。

无法input到使用kubernetes部署创build的泊坞窗容器中

随着minikube我创build了简单的部署( https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#creating-a-deployment )在kubernetes。 我敢肯定,容器必须运行,因为kubernetes吊舱启动成功,我可以看到容器在Portainer运行。 但是我不能进入容器! (我总是可以用一个简单的pod来完成,也许部署有些不对) $ docker exec -it 01a7c90b4267 /bin/bash rpc error: code = 2 desc = oci runtime error: exec failed: dial unix /tmp/pty870274210/pty.sock: connect: connection refused 此外,我发现容器日志中的“错误同步窗格”,但容器状态正在运行

SSH到Azure的Kubernetes托pipe主节点

我刚刚使用Azure容器服务部署了一个托pipe的Kubernetes集群。 我的部署包括托pipe群集上的单个代理计算机和连接到它的Azure磁盘以进行持久存储。 我面对的问题是,我不知道如何ssh这个代理服务器。 我读过,你应该能够ssh的主节点,并从那里连接到代理,但因为我正在使用托pipe的Kubernetes主,我无法find这样做的方式。 任何想法? 先谢谢你。