Tag: bash

dockerfile postgresl创buildangular色

PostgreSQL 10 我正在尝试在启动时在Docker容器中创build一个angular色 我试过创build这样的angular色: gosu postgres pg_ctl start -D /var/lib/postgresql/data if [ "${PGUSER}" != 'postgres' ]; then gosu postgres psql –command="CREATE USER ${PGUSER} SUPERUSER WITH PASSWORD '${PGPASSWORD}';" –echo-hidden –echo-queries fi gosu postgres pg_ctl stop -w -D /var/lib/postgresql/data 这仍然给我致命一击:angular色“grafadmin”不存在 当试图创build一个数据库: gosu postgres createdb -O grafadmin grafana 我也试过: cat > ${HOMEDIR}/user.sql <<SQL DO $body$ BEGIN IF NOT […]

bash:configuration/ etc / hosts接受子网中的多个IP地址

如何configuration/etc/hosts来parsing子网范围内的全局IP地址? 即IP为123.456.789.0 。 我想它validationIP 123.456.789.11 & 123.456.789.22作为名称friendlyserver。 这是通过一个orchestrator使用一个link 。 如果不能这样做,我该如何使用/etc/hosts创build静态IP? 我有一个编排工具,在服务器文件的每次重新上传(这是不可取的)改变(链接服务器)的IP。 [使用Apcera,docker,js,bash,linux和一个服务器]

为什么docker-compose exec只能在一些服务上工作?

我有一个docker-compose文件,指定多个服务,如应用程序,服务器,Redis和数据库。 当我想要访问它们时,我会执行docker-compose exec application bash或者docker-compose exec server bash 。 但是当我做一个docker-compose exec redis sh我得到错误ERROR: No such service: redis 。 但是,我可以通过执行docker exec -it smb-redis sh来访问它。 有什么不同? 为什么我可以访问一些正在运行的服务,而不是使用该命令的其他服务?

ssh-在docker集装箱中添加

我已经把~/.ssh目录挂载到我的开发docker容器中,并且试图将这个部署密钥添加到入口点的ssh代理中,如下所示: #!/bin/bash set -e #add the deployment key if [[ ! -z ${DEPLOYMENT_SSH_KEY} ]] ; then echo "Adding deployment ssh key ${DEPLOYMENT_SSH_KEY} to ssh agent" eval $(ssh-agent -s) && ssh-add /.ssh/${DEPLOYMENT_SSH_KEY} else echo "Deployment ssh key is not defined" fi echo "STARTING PHP FPM, CMD $@" docker-php-entrypoint "$@" 密钥通常根据日志添加: 代理pid 8 将部署ssh密钥id_rsa添加到ssh代理 添加身份:/.ssh/id_rsa(rsa w / […]

为什么bashlogin不允许更改docker容器的MTU,但nsenter呢?

我search,但没有find这个查询的答案。 当我尝试通过使用docker exec -it <container id> bash命令进行日志logging来更改容器接口的MTU值时,它不允许我更改接口的MTU值,但是如果使用命令nsenter,则可以更改MTU值。 两者有什么区别? 不工作:当运行bash命令时: root@testbp:~# docker exec -it ecd6395e624f bash root@ecd6395e624f:/bp2/src# ip a bash: ip: command not found root@ecd6395e624f:/bp2/src# ifconfig -a eth0 Link encap:Ethernet HWaddr 02:42:ac:10:00:33 inet addr:172.16.0.51 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr: fddd::33/112 Scope:Global inet6 addr: fe80::42:acff:fe10:33/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1462 Metric:1 RX packets:641487 errors:0 dropped:0 overruns:0 frame:0 […]

docker高山/ bin / sh script.sh找不到

我正在尝试构build一个以openjdk为基础的docker镜像。 问题是当我尝试执行一个script.sh ,返回给我以下消息: /bin/sh: bin/script.sh: not found script.sh正确地位于bin /文件夹中,这就是为什么我不知道是什么问题。 任何人有任何想法? 谢谢。

捕获docker容器内的shell脚本的输出到使用docker sdk for python的文件)

我有一个名为test.sh docker容器中有一个shell脚本。 我想把这个脚本的输出传给一个文件。 我可以使用docker exec命令或通过login到shell(使用./test.sh > test.txt )并运行./test.sh > test.txt 。 但是,我想知道如何使用docker sdk for python实现相同的结果。 这是我的代码到目前为止: import docker client = docker.APIClient(base_url='unix://var/run/docker.sock') container= client.create_container( 'ubuntu:16.04', '/bin/bash', stdin_open=True, tty=True, working_dir='/home/psr', \ volumes=['/home/psr/data'], \ host_config=client.create_host_config(binds={ '/home/xxxx/data_generator/data/': { 'bind': '/home/psr/data', 'mode': 'rw', }, }) ) client.start(container=container.get('Id')) cmds= './test.sh > test.txt' exe=client.exec_create(container=container.get('Id'), cmd= cmds, stdout=True) exe_start=client.exec_start(exec_id=exe, stream=True) for val in […]

为什么docker-compose需要为exec命令编写文件?

我有一个bash脚本,位于docker-compose.yaml提供的目录上面。 在bash脚本里面有命令: docker-compose exec ${service} /somescript_inside_container.sh 当执行这个bash脚本,我得到: ERROR: Can't find a suitable configuration file in this directory or any parent. Are you in the right directory? Supported filenames: docker-compose.yml, docker-compose.yaml 但是当运行这个命令与docker和引用container_name而不是service例如 docker exec ${container_name} /somescript_inside_container.sh 它会工作。 对我来说,这不是明显的行为,我很好奇,为什么docker和docker组成这样的区别?

Apache Geode w / Docker – testing

我是新来的Geode和我在Docker中用bash脚本创build一个geode容器。 在此之后,我将聚集Geode。 由于我从来没有真正与Geode合作过,我不确定如何testing以确保一切正常。 例如,我会使用hello世界的jar来testing我的高山集群,但是我怎样才能testingGeode以确保一切正常运行? 我附上我的bash脚本的副本。 提前感谢一切帮助! docker stop geodesrv && docker rm geodesrv; docker network create gravitasnw; echo "***********Starting Geode Container**************"; docker run -d -it \ -p MyIP:10334:10334 \ -p MyIP:1099:1099 \ -p MyIP:40411:40411 \ –name geodesrv –hostname geodesrv –net gravitasnw apachegeode/geode; sleep 3s; echo "***********Starting Locator & Server***************"; docker exec -it geodesrv bash -c […]

计算Bash中Docker容器使用的内存总量

如何在一个Bash命令行中计算在本地Docker引擎上运行的Docker容器使用的内存总量?