
Docker
runzhliu
毕业于中山大学,目前专注于容器和大规模并行计算
展开
-
【Docker】docker login Harbor搭建的registry报503错误
生产和测试环境维护了两套 Harbor 仓库,准备做镜像同步,要实现这样的功能,首先得是两边环境网络是通的,通过临时的网络策略放开了,然后就是至少两边互相 docker login 对方的 registry 应该也需要成功,但是有个奇怪的问题出现了。生产环境 docker login 测试环境的 registry OK,但是反过来却不行,意味着无法做镜像同步。一开始怀疑是有些特殊端口没通(只开放了80端口),联系运维的同学,把 ip 对 ip 的所有端口都开放了,还是失败了,抓包发现生产环境会主动断开连原创 2021-11-18 10:47:02 · 2995 阅读 · 0 评论 -
【Docker】docker build提示空间不够?
我的 Dockerfile 里有一步在镜像里安装软件的步骤。# 安装go1.15RUN rpm --rebuilddb && echo "sslverify=false" >> /etc/yum.conf && yum install golang-pkg-bin-linux-amd64 java-1.8.0-openjdk-devel -y很不幸的是,执行 docker build 的时候竟然提示容量不足(对 yum 比较熟悉的朋友应该也有看过类似的报错原创 2021-04-25 22:45:01 · 1979 阅读 · 0 评论 -
【Docker】docker completion的zsh补全配置
本人用的是 zsh,如果 zsh 本身配置没问题的话,在 zsh 上安装 docker 语法补全的插件是很方便的,来看官方指引。因为之前一直懒得配,每次 docker run 的时候忘记 --rm,后面要 stop 容器的时候就需要先 docker ps 查一下 container id,然后复制粘贴在 docker stop 后面,很麻烦,但之前一直懒得整,今天有空就整一下好了,编辑你的 /root/.zshrc,加上之后 source /root/.zshrc 就可以了。来看看效果。这个 ba原创 2021-03-30 11:25:17 · 1748 阅读 · 0 评论 -
【Docker】update-ca-certificates把JAVA_HOME抹掉了?一个镜像问题(未解决)
今天在做镜像的时候发现一个问题。maven:3.6.3-openjdk-8 镜像是 dockerhub 拉下来的,大家可以尝试一下,然后在 Dockerfile 里执行了一下 update-ca-certificates 这个命令,然后神奇的事情就发生了,在执行 mvn 的时候居然说找不到 JAVA_HOME。然后简单做了下面的 demo,很明了原来 JAVA_HOME 下面的文件 /usr/local/openjdk-8 内容发生了变化。因为本身对 update-ca-certificates 这个命原创 2021-03-23 10:26:02 · 1261 阅读 · 0 评论 -
【Docker】修改docker镜像存储的路径
Docker 的数据文件默认是安装在 /var/lib/docker 下,而这个地址一般是在系统盘下,如果系统盘分区不够大,就没法放太多镜像了,一般开发机都会多挂几个盘,或者一个大硬盘,多分几个区,分个几百G来放镜像也是可以的。修改的方法很简单,就是给 /var/lib/docker 创建一个其他分区目录的软链,然后重启一下 dockerd 进程即可,比如说 systemctl restart docker。...原创 2020-08-03 14:36:51 · 527 阅读 · 0 评论 -
oci runtime error: exec failed: container_linux.go:247: starting container process caused “exec: \“/
在运行 mpi-operator 之后,想进去容器查看一下,于是执行下面的命令报错。[root@TENCENT64site /data/runzhliu/mpi]# kubectl exec -it -n kube-system mpi-operator-bbf56967f-ht8bx /bin/shrpc error: code = 2 desc = oci runtime error: exec failed: container_linux.go:247: starting container p原创 2020-07-07 14:51:03 · 5050 阅读 · 0 评论 -
容器共享GPU时查看容器使用的GPU编号
对于单机多卡的 GPU 服务器,在做容器的 GPU 分配的时候,可以选择通过环境变量 NVIDIA_VISIBLE_DEVICES来指定 GPU 的索引或者 UUID。因为在容器中看到的 GPU 索引都是从0开始的,如果想找到对应母机上的 GPU 卡,通过 UUID 又不太好确定。...原创 2020-06-11 11:28:59 · 3507 阅读 · 0 评论 -
apt-get update遇到NO_PUBKEY
这是因为给 Ubuntu 安装软件的时候需要做验证,当然了,这个并不是必须的,也就是你的容器里也可以装没有经过认证可能不安全的源中安装需要的软件,虽然不建议,但是有时候为了快速调试,比如在公司内部的源里安装软件,可以试一下。如果遇到 NO_PUBKEY 的问题,如下:root@spark-sparkoperator-58f598c98b-x7vjn:/etc/apt/trusted.gpg.d# apt-get updateGet:1 http://mirrors.tencent.com/ubuntu原创 2020-06-03 22:48:15 · 707 阅读 · 0 评论 -
构建pyflink镜像
想做一个 pyflink 的镜像,所以打算在 python 的镜像里直接安装 apache-flink 的 pip 包,FROM 的镜像是 python:3.6.10-alpine3.11,发现报错,FileNotFoundError: [Errno 2] No such file or directory: 'cc': 'cc' ,具体信息如下。很明显,这个 python 镜像是在 Alpine 上构建的,众所周知,Alpine 镜像很小,很多东西没有装,所以装一下 gcc 就好了。apk add原创 2020-05-29 14:24:11 · 429 阅读 · 0 评论 -
tcsetpgrp failed重新编译tini
文章目录1 Overview2 tini 源码3 Summary1 Overview在启动 Spark Operator 的时候出现了一个意想不到的问题。[root@sholdmix01node1 /data/runzhliu/spark]# kubectl log -n kube-system spark-sparkoperator-86f6c889cd-ggbmclog is DEPRECATED and will be removed in a future version. Use log原创 2020-05-12 14:18:47 · 589 阅读 · 0 评论 -
Kubernetes 环境的 Tensorflow Serving on S3
文章目录1 Overview2 Practice2.1 Serving 镜像2.2 模型文件和 s3cmd 环境2.3 部署2.5 更新模型3 测试4 Summary5 ReferenceTensorFlow Serving is a flexible, high-performance serving system for machine learning models, designed ...原创 2020-03-04 14:51:48 · 894 阅读 · 0 评论 -
Kubernetes Scheduler Extender浅析
https://kubernetes.io/docs/concepts/extend-kubernetes/extend-cluster/#scheduler-extensionsScheduler 组件可以视为一种监视 watche 和将 Pod 分配 assign 到 Node 的特殊类型控制器 controller。在 Kubernetes 里,默认的 Scheduler 完全可以被替...原创 2020-02-09 09:52:03 · 2317 阅读 · 0 评论 -
docker login 报错了...
简单记录一下 docker login 时候有问题了,以下是我 Docker Engine 的 version 信息。Docker Client: Docker Engine - Community Version: 18.09.3 API version: 1.39 Go version: go1.10.8 Git commit: ...原创 2019-06-02 00:16:37 · 4011 阅读 · 0 评论 -
Spark on K8S 访问 Kerberized HDFS
文章目录1 Overview2 Practice2.1 前提条件2.2 部署 Kerberized HDFS2.3 Spark 程序访问 HDFS3 Summaryhttps://databricks.com/session/apache-spark-on-k8s-and-hdfs-security1 OverviewSpark 从2.3开始支持 Native 的 K8S 作为 reso...原创 2019-06-03 15:53:21 · 2058 阅读 · 0 评论 -
在 K8S 部署一个 Spark History Server - 篇1
文章目录1 Overview2 Spark History Server 本地试玩3 Docker 化1 Overview要在 K8S 集群中部署一套 Spark History Server,首先要了解,怎么部署一个本地版本。然后就是了解一些基本的 K8S 相关的知识点。最后就是两部分知识结合起来,看看业界流行的方案是如何实现的。Spark History Server 缩写成 HS...原创 2019-07-09 11:18:27 · 584 阅读 · 0 评论 -
在 K8S 部署一个 Spark History Server - 篇2
文章目录1 Overview2 Start3 Summary1 Overview之前我们组在生产环境上部署的是 Spark 2.2 on k8s 的那个 fork,部署在 K8S 上,至少需要一个 Dockerfile,最近有计划升级到 3.0.0 Snapshot 的分支代码上,借此,做个记录。History Server => HS2 StartSpark 自2.3.0,之...原创 2019-07-09 12:32:58 · 578 阅读 · 0 评论 -
Docker For Mac K8S 的诡异问题
简单记录一下 Docker For Mac 的 K8S 支持的诡异问题。因为工作需要,经常要做一些 K8S 的测试,但是 Mac 部署 K8S 集群,比较简单的方法,要么是 minikube,要么就是 Docker For Mac 的 K8S 支持,我选择了 Docker For Mac,因为实在太简单了。但是重启电脑带来的问题就是 Docker 服务也要重启,那么问题主要在于 K8S 时而重...原创 2019-07-13 23:04:38 · 432 阅读 · 0 评论 -
Flink Dockerfile 走读
文章目录1 Overview2 Dockerfile3 Entrypoint1 Overview关于 Flink 的 Docker 相关的配置,可以参考源码这个目录。/path/to/flink/flink-container/docker├── Dockerfile // Dockerfile├── README.md // 具体的说明,如何创建 Flink 的镜像文件├── bui...原创 2019-07-20 10:25:55 · 1564 阅读 · 0 评论 -
Flink 集群/任务容器化
文章目录1 Overview2 Docker Compose3 Example4 Summary1 Overview/path/to/flink/flink-container/docker├── Dockerfile├── README.md├── build.sh├── docker-compose.yml├── docker-entrypoint.sh└── test-job...原创 2019-07-20 11:13:17 · 1015 阅读 · 0 评论 -
Docker ENTRYPOINT 笔记
文章目录1 Overview2 ENTRYPOINT3 Summary1 OverviewDocker 中 ENTRYPOINT 一直是个容易混淆的概念,今天浏览了一下官网,简单总结一下。官网的参考链接如下。https://docs.docker.com/search/?q=entrypoint2 ENTRYPOINT在 Dockerfile 中,ENTRYPOINT 是作为容器运...原创 2019-07-21 10:07:35 · 17725 阅读 · 0 评论 -
Apache Beam的Docker Demo
文章目录1 Overview2 Docker 部署 Flink & Beam2.2 Beam Flink3 Summary1 Overview参考文章: https://medium.com/@0x0ece/a-quick-demo-of-apache-beam-with-docker-da98b99a502aApache Beam 是什么?Apache Beam 是统一的批/...翻译 2019-05-19 16:32:17 · 387 阅读 · 0 评论