Docker Pull设置代理解决Get https://k8s.gcr.io/v2/: net/http: request canceled while waiting for connection

今天搭建k8s集群时,发现一系列k8s.gcr.io的镜像无法pull:

1
2
3
-<%>- docker pull k8s.gcr.io/kube-proxy
Using default tag: latest
Error response from daemon: Get https://k8s.gcr.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

原来是万恶的g/f….w,需要为docker设置代理,并重启docker daemon:

1
2
3
4
5
6
7
8
9
10
11
12
sudo mkdir -p /etc/systemd/system/docker.service.d 
sudo touch /etc/systemd/system/docker.service.d/proxy.conf
sudo chmod 777 /etc/systemd/system/docker.service.d/proxy.conf
sudo echo '
[Service]
Environment="HTTP_PROXY=http://proxy.xxx.com:8888/"
Environment="HTTPS_PROXY=http://proxy.xxx.com:8888/"
' >> /etc/systemd/system/docker.service.d/proxy.conf
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl restart kubelet

分享到 评论

Ubuntu20安装SonarQube

SonarQube是一个基于web的开源工具。用来管理代码质量和代码分析。还可以跟踪统计数据并创建图表,使开发人员能够快速识别代码中的问题。

先决条件

  1. Ubuntu 20.04 LTS,至少2GB内存和1核CPU

  2. PostgreSQL 版本 9.3或更高

  3. 使用sudo权限访问ssh

  4. 开放端口9000

    查看更多

分享到 评论

ubuntu20.04部署k8s

前置步骤

禁止swap分区

K8s的要求,在每个宿主机上执行:

1
sudo swapoff -a

#修改/etc/fstab,注释掉swap那行,持久化生效

1
sudo vi /etc/fstab

重启。

确保sysctl配置中net.bridge.bridge-nf-call-iptables的值设置为了1

查看更多

分享到 评论

docker 一些参数的区别

docker

ADD 和 COPY 的区别

COPY和ADD命令,在复制普通文件的时候,并没有什么太大的不同,两个命令都可以把本地文件,复制到镜像里。(如果复制的路径不存在,则会自动创建)

ADD 构建镜像和COPY最直观的一点不同,是ADD命令可以直接解压gzip压缩文件,这当我们有很多文件要上传操作的时候,就会变的简单很多。但是表现不一致,可能也不会解压,所以官方建议使用copy

ENV 和 ARG 的区别

查看更多

分享到 评论

将具名参数传递给sh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
for ARGUMENT in "$@"
do

KEY=$(echo $ARGUMENT | cut -f1 -d=)
VALUE=$(echo $ARGUMENT | cut -f2 -d=)

case "$KEY" in
STEPS) STEPS=${VALUE} ;;
REPOSITORY_NAME) REPOSITORY_NAME=${VALUE} ;;
*)
esac


done

echo "STEPS = $STEPS"
echo "REPOSITORY_NAME = $REPOSITORY_NAME"

查看更多

分享到 评论