背景是这样的,有个组的研发同学,原来是宿主机的服务,后来改成Docker后,需要crontab定时拉起容器内的shell,但是问题来了,容器内的用户啊,是nologin的,然后研发就束手无策了……
话说,研发就只懂自己那一亩三分地的技术,不脸红的吗?探索精神呢?[……]
标签归档: Docker
Docker, one or more build-args were not consumed解决办法
造成报错:“Docker, one or more build-args were not consumed”,主要是传参却未定义对应参数所致。
官方说明:ARG 指令定义了一个变量,用户可以在构建时使用 –build-arg = 标志通过 docker[……]
docker-compose如何自定义网络类型
默认docker-compose拉起的容器网络类型都是桥接,那么docker-compose使用自定义网络类型呢?
修改yml配置文件即可,以下代码示例就实现了使用host网络模式启动容器:
version: "2"
services: w[......]
Docker cap-add添加方式
有的时候,容器内需要使用一些指令来做程序跟踪,堆栈打印等等,但Docker的安全策略默认禁用了SYS_PTRACE,如何启用呢?
Docker cap-add添加方式有哪些呢?docker-compose的yml文件中,添加如下配置即可:
cap_[......]
找回运行容器的docker run启动参数
最近有个特别的需求,想看下某个容器拉起时的指令。
由于之前是用sh拉起的,而文件早已找不到了。所以搜了下,还真有针对CentOS的方案:
pip3 install runlike -y
或者:
yum install -y python-pip[......]
Alpine 中如何设置时区
这是最近测试同学发现的问题:接手的一个基于Alpine的镜像拉起的容器里和实际时间差了8个小时,很明显,环境变量缺了TZ,当然,除此之外,还需要安装tzdata才行。
那么,Alpine 中如何设置时区?Dockerfile中加入如下代码即可:
RUN[......]
Alpine 中如何使用usermod和groupmod
呐,最近微调一个基于Alpine的Dockerfile,由于要和宿主机统一用户,需要用到usermod和groupmod,但执行了下提示命令不存在。
那么,Alpine 中如何使用usermod和groupmod呢?方法如下:
RUN apk --no[......]
docker-compose指令如何传参
有时,我们需要docker-compose传参以配合yml配置文件编译相关镜像并自动拉起服务,那么如何传参呢?
假设我们要传输test=1 test2=2
到yml配置文件,那么指令应当如下:
test=1 test2=2 docker-compose -f[......]
Docker中/dev/stdout /dev/stderr的记录
这个/dev/stderr和/dev/stdout呢,通常如果留意公共镜像,就会发现,比如nginx的默认日志输出就是打到/dev/stdout而非具体的log文件的。
那么/dev/stdout和/dev/stderr具体是何含义呢?总结如下:
/d[......]
Docker supervisor守护进程
Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。
Docker中用来守护进程是很方便的,今日就说一下Ubuntu为基础的镜像,Dockerfile如何写来安装使[……]