0%

helm私有charts仓库进阶

镜像官方仓库

在了解了chart的基本组成结构之后,自己开始动手开始写chart,这时候还是想找一些官方项目看看。官方仓库里面有很多参考,把官方仓库的熟悉项目的chart都看一遍,跑一遍,再尝试修改一遍,其实也就对chart实际上了解的差不多了,剩下的就是到实际项目中实践了。

然而官方仓库托管在了google上,这就带来了一个科学上网的问题。本机的还好说,可是服务器上,工具链上就麻烦了,还涉及到内网的问题,所以一开始就想把官方仓库拖下来。

首先看一下官方仓库的结构,就一个index.yaml,里面是实际tgz包的地址,对托仓库实在是太友好了。

先把yaml文件下载下来:

1
2
3
4
# ADDR_PORT为可以科学上网的http代理的地址 
export https_proxy=http://${ADDR_PORT}/
mkdir helm-mirror && cd helm-mirror
wget https://kubernetes-charts.storage.googleapis.com/index.yaml -O offical-index.yaml

看一下yaml文件中chart的下载路径在哪:

阅读全文 »

Quick start

这是官方文档中的运行命令

1
2
3
4
5
6
7
8
9
sudo docker run --detach \
--hostname gitlab.example.com \
--publish 443:443 --publish 80:80 --publish 22:22 \
--name gitlab \
--restart always \
--volume /srv/gitlab/config:/etc/gitlab:Z \
--volume /srv/gitlab/logs:/var/log/gitlab:Z \
--volume /srv/gitlab/data:/var/opt/gitlab:Z \
gitlab/gitlab-ce:latest
这是我自己搭建时使用的命令

1
2
3
4
5
6
7
8
9
sudo docker run --detach \
--hostname git.taeroen.xyz \
--publish 1443:443 --publish 1080:80 --publish 1022:22 \
--name gitlab-ce \
--restart unless-stopped \
--volume /data/gitlab/config:/etc/gitlab:Z \
--volume /data/gitlab/logs:/var/log/gitlab:Z \
--volume /data/gitlab/data:/var/opt/gitlab:Z \
gitlab/gitlab-ce:8.17.2-ce.0
两者区别的地方就是可以自定义配置的地方,hostname只是个实例,如果有域名的话可以配成自己的,也可以更改自己的hosts来指向;端口的话随意,内部端口正确即可以;restart策略我更习惯使用unless-stopped,如果我手动stop后不会在下一次开机后重启;挂载目录的话可以看自己的需求,我习惯都挂载/data目录下;最后的tag建议改成一个固定值,实际上就是latest指向的值,这样避免升级时由于版本问题带来可能的bug。

进阶

实际使用时需要在启动时传一些额外的参数,例如lfs,external_url,可以在启动时添加额外的参数。

例如:

阅读全文 »

Linux常见的打包及压缩文件格式有tar,tar.gz,tar.xz,tar.bz2,zip,虽然命令不多,但是经常容器弄混,在这里用表格整理一下,方便记忆及操作。

源文件:src.xxx

目标文件:dest.xxx

解压到指定目录:/tmp


扩展文件名 解压缩 解压缩到指定目录 压缩 可选参数
zip unzip src.zip unzip src.zip dest
gz gnuzip src.gz gzip src
tar tar xf src.tar tar xf src.tar -C /tmp tar cf dest.tar src -v 显示过程
tar.gz/tgz tar zxf src.tar.gz tar zxf dest.tar.gz -C /tmp tar zcf dest.tar.gz src -v 显示过程
tar.bz2 tar jxf src.tar.bz2 tar jxf dest.tar.bz2 -C /tmp tar jcf dest.tar.bz2 src -v 显示过程

Debian8 内核编译

本文介绍两种编译linux内核的方式,一种是debian发行版打过补丁和更改过配置的内核,一种是linux的原版内核。

1 准备编译环境

安装编译工具链

1
# apt-get install build-essential kernel-package libncurses5-dev -y

2 下载Debian发行版内核源码

1
# apt-get install linux-source-3.16 -y

内核源码包安装完成后下载到/user/src目录下

阅读全文 »