Tag: Linux容器

jenkinspipe道:邮差testing脚本失败与“连接ECONNREFUSED IP:端口”

我正在尝试在Linux中使用Jenkins来设置我的Java REST服务的CI / CD pipleline。 Pipline安装在build立jar(如果有的话)和创buildDocker镜像并运行容器在Linux框中,并在testing阶段,我已经写了postman集合来testing运行在Docker容器中的webservice。 pipe道工作直到运行docker集装箱。 但是,当使用newman从Jenkins执行邮差收集时,失败 “挂起的错误sockets”。 – 如果在端点中给出本地主机。 连接ECONNREFUSED ip:port – 如果给出hostname。 我的步骤来找出问题: 从Postman客户端调用Web服务 – 正在工作。 像jenkins用户一样运行postman collection窗体命令行。 使用机器名称,IP地址,本地主机等改变了web服务的URL – 一切工作如果从命令行作为jenkins用户运行。 但不是从jenkinspipe道。 环境: 应用程序:Spring启动并公开一个简单的Hello World服务。 操作系统:Linux RHEL

如何将aufs目录下的docker镜像移动到overlay2?

我将Debian的内核从3.x更新到4.x. Docker存储变成了overlay2。 ls /var/lib/docker/ containers image network overlay2 plugins swarm tmp trust volumes 旧的目录结构是 aufs containers graph image init linkgraph.db network plugins repositories-aufs swarm tmp tmp-old trust volumes 我的图像是在aufs目录中,我无法启动与旧目录的docker服务。 我怎样才能将我的图像移动到overlay2?

在Docker容器上运行自主开发的Python服务器

我有这个python服务器: import SocketServer class TCPHandler(SocketServer.BaseRequestHandler): def handle(self): print 'client is connected' data = self.request.recv(1024) print data self.request.sendall('Message received!') HOST, PORT = '0.0.0.0', 5004 server = SocketServer.TCPServer((HOST, PORT), TCPHandler) print 'Listening on port {}'.format(PORT) server.serve_forever() 和这个客户: import socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect(('192.168.56.101', 5004)) s.sendall('Hello my name is John') response = s.recv(1024) print 'Response: {}'.format(response) 我的操作系统是macOS,我使用VirtualBox在虚拟机上安装了Ubuntu […]

Docker和Rocket(rkt)容器访问Linux内核的方式有什么不同?

我读过,Docker使用libcontainers和rkt使用systemd-spawn来访问Linux内核。 虽然有些网站说Docker也可以使用systemd-spawn,所以我很困惑。 它和如何知道它们有什么区别,他们这样做的相关方式是什么?

启动应用程序退出后如何继续使用docker容器?

我想创builddocker映像,在运行后启动nano编辑器,并在nanoclosures后为用户继续工作。 为此我写了下一个Dockerfile FROM ubuntu:14.04 RUN apt-get update && apt-get install -y nano RUN mkdir /home/working ENV EDITOR /bin/nano WORKDIR /home/working ENTRYPOINT /bin/nano 运行容器(docker run -it -rm test) nano后,启动nano,退出nano之后,容器closures。 closuresnano后,我想继续工作到Ubuntu的容器。 我应该改变我的Dockerfile?

通过docker安装Tensorflow时出错

我试图运行这个 docker run -it tensorflow/tensorflow:1.1.0 bash 但是我得到了这个错误。 为什么我得到这个错误(它说:无法find图像'tensorflow / tensorflow:1.1.0'本地),并开始下载,然后停止下载并说超时? 你能帮我吗? 无法在本地find图像'tensorflow / tensorflow:1.1.0' 1.1.0:从张量stream/张量stream中拉出 c62795f78da9:拉完成 d4fceeeb758e:拉完成 5c9125a401ae:拉完成0062f774e994:正在下载 6b33fd031fac:正在下载 353b34ef0a98:正在下载 4f6aefc14b68:正在下载 ce066374c6ca:正在下载7.505 MB / 115.7 MB c0755a91ab3a:正在下载5.92 MB / 17.13 MB f03279b52d25:下载完成 d1c27c29b7e3:下载完成 23807c5f4b3e:正在下载 docker:在127.0.1.1:53上拨号tcp:查找registry-1.docker.io:读取udp 127.0.0.1:58167->127.0.1.1:53:I / O超时。 参见“docker运行 – 帮助”。 nastaran @ nastaran-VirtualBox的:〜$

使用–user参数来创build一个具有Dockerfile容器的用户

我有一个docker容器得到通过随机生成 – 用户ID。 我想要做的是在docker文件中创build一个用户的ID。 像这样RUN adduser –disabled-password –uid ${IDHERE} –gid 0 –gecos container container 在docker中可能吗? 我只需要获取传递给–user的id。 PS:我知道这听起来像是一个奇怪的方式来实施docker集装箱。 该容器是由一个守护进程来pipe理容器的,而我正在部署的应用程序需要一个文件在执行应用程序的用户的home目录中,或者它被segfualts,但是当在容器中运行whoami ,显示从–user婴儿车,而不是我放在docker文件中的东西。

docker运行 – 用户组不按预期工作?

我有一个通过串口( /dev/ttyUSB0 )进行通信的脚本。 我想从Docker镜像中运行它。 不过,我似乎没有权限从图像中做到这一点。 我遵循这些步骤: 在我的主机上,如果我运行ln -l /dev/ttyUSB0我得到: crw-rw—- 1 root dialout 188, 0 jul 2 14:34 /dev/ttyUSB0 好,这意味着为了读/写,我需要是root ,或dialout组的一部分。 我在我的主持人成为这个组的成员: $ sudo usermod -aG dialout $(whoami) 然后我注销并重新login以使其生效。 之后,我validation了我可以与我的主机上的/dev/ttyUSB0完美通信。 但是,如果我运行泊坞窗图像: docker run –user=1000:1000 –rm=true –tty=true –privileged=true –device=/dev/ttyUSB0 –volume=<my_dir>:<my_dir> –workdir=<my_dir> <my_docker_image> <my_script> 然后它抱怨说: can't open device "/dev/ttyUSB0": Permission denied 但是,如果我使用:– –user=1000:20 ,那么它工作正常。 组20是dialout组。 现在我的问题: 为什么Docker不知道我的用户(1000)和组(1000)是dialout组的一部分? […]

在Docker容器中构build较老的gcc

我正在尝试在Docker容器中构buildgcc 4.4.3,但遇到了以下问题: 使用Ubuntu 16.04 Docker镜像, https://github.com/gcc-mirror/gcc/releases上的Github发行版以及下面的Docker命令, Makefile:2470:目标'toplev.o'的配方失败make [2]:*** [toplev.o]错误1 RUN buildDeps='wget unzip bison flex libmpc-dev g++ ' \ && apt-get update && apt-get install -y $buildDeps –no-install-recommends \ && wget https://github.com/gcc-mirror/gcc/archive/gcc-4_4_3-release.zip \ && mv gcc-4_4_3-release.zip gcc-4.4.3.zip\ && unzip gcc-4.4.3.zip \ && mv gcc-gcc-4_4_3-release gcc-4.4.3 \ && cd gcc-4.4.3 \ && mkdir objdir \ && cd […]

Docker Toolbox端口映射不起作用

我已经在Windows机器上安装了Docker工具箱,运行下面的命令后,我没有看到任何监听我的主机指定的端口(82)。 docker run -ti -p 82:80 –name=container_alias someprovider/image:some_tag 我没有附加到这个contianer,并做了一个简单的检查容器内使用: curl localhost:80 它确实返回HTML源内容,这意味着容器运行正常。 可能是这种意外行为的原因是什么?