Tag: shell

在Pythonsubprocess中的Docker中运行交互式命令

当我在交互模式下使用docker run时,我能够运行我想testing一些python的命令。 root@pydock:~# docker run -i -t dockerfile/python /bin/bash [ root@197306c1b256:/data ]$ python -c "print 'hi there'" hi there [ root@197306c1b256:/data ]$ exit exit root@pydock:~# 我想从Python使用subprocess模块自动化,所以我写了这个: run_this = "print('hi')" random_name = ''.join(random.SystemRandom().choice(string.ascii_uppercase + string.digits) for _ in range(20)) command = 'docker run -i -t –name="%s" dockerfile/python /bin/bash' % random_name subprocess.call([command],shell=True,stderr=subprocess.STDOUT) command = 'cat <<\'PYSTUFF\' | […]

如何从Windows Shell连接到docker VM(MobyLinux)?

是否有远程login到主机虚拟机的shell,类似于我们如何轻松地进入运行容器bash? docker执行官 – 这个bash 我不小心打破了一个容器的关键文件,所以无法启动。 不幸的是,那个容器里面存储着数据。 结果是,每当我试图运行它,它无法启动。 我看到的唯一解决scheme是关于导航到主机docker守护程序的文件。 但是,我在Windows上运行docker虚拟机,并且无法访问VM(MobyLinuxVM)中的文件。 我使用Docker for Windows版本1.12.3-beta30.1(8711)

docker-compose的环境variables在Jenkins里面

我有以下设置: jenkins环境运行docker-compose,但我需要将环境variables传递给yml文件: 示例docker-compose.yml version: '2' services: logon_server: build: . image: my_server:0.0.1 ports: – "9200:9200" command: ${DOCKER_CMD_EXEC} networks: – my_ntwrk networks: my_ntwrk: 当我从我的Mac上的shell提示符下运行以下脚本时,我可以传递不同的命令来执行,一切正常。 exec-tests.sh #!/bin/bash chmod 755 docker/exec-*.sh # Setup env variables export DOCKER_CMD_EXEC=/ci_e2e.sh # Optional: record current versions docker -v && docker-compose -v echo `whoami` echo `sudo -E -u admin printenv` # Build, deploy and […]

在Dockerfile中将数据写入文件

我有一个shell脚本script.sh,它将一些行写入一个文件: #!/usr/bin/env bash printf "blah blah blah blah\n" | sudo tee file.txt 现在在我的Dockerfile中,我添加这个脚本并运行它,然后尝试添加生成的file.txt : ADD script.sh . RUN chmod 755 script.sh && ./script.sh ADD file.txt . 当我这样做,我只是得到一个错误引用ADD file.txt . 命令: lstat file.txt: no such file or directory 为什么docker不能find我的shell脚本生成的文件? 我能在哪里find它?

docker工人运行没有主机卷的本地脚本

目标是在数据库容器运行后,使用curl从下载中将数据添加到多容器Web应用程序的数据库服务器容器中。 我可以通过docker-compose.yml或独立于Web应用程序的docker运行来实现,只要我使用主机卷即可。 如何在不使用主机卷或Web应用程序特定的Docker文件的情况下执行此操作? Docker撰写与主机卷的例子: dbinit: build: ./webtools_config/initdb command: bash -c "/tmp/webtools_config/dbinit.sh" volumes: – ./webtools_config:/tmp/webtools_config links: – db1 – db2 docker运行的例子,我想将脚本文件本地传递给docker 客户端 ,如./dbinit.sh: docker run -a stdin -a stdout -i -t \ –link dir_db1_1:db1 \ –link dir_db2_1:db2 \ initdb /bin/sh -c "./dbinit.sh"