【Jenkins+K8s实现持续集成】

Docker的安装与配置

Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE。
社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过的基础设施、容器、插件等。

社区版按照stable和edge两种方式发布,每个季度更新stable版本,如17.06,17.09;每个月份更新edge版本,如17.09,17.10。

一、安装docker
1、Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。
通过 uname -r 命令查看你当前的内核版本

$ uname -r

2、使用 root 权限登录 Centos。确保 yum 包更新到最新。

$ sudo yum update

3、卸载旧版本(如果安装过旧版本的话)

$ sudo yum remove docker docker-common docker-selinux docker-engine

4、安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2

5、设置yum源

$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

6、可以查看所有仓库中所有docker版本,并选择特定版本安装

$ yum list docker-ce --showduplicates | sort -r

7、安装docker

$ sudo yum install docker-ce  #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版17.12.0
$ sudo yum install <FQPN>  # 例如:sudo yum install docker-ce-17.12.0.ce

8、启动并加入开机启动

$ sudo systemctl start docker
$ sudo systemctl enable docker

9、验证安装是否成功(有client和service两部分表示docker安装启动都成功了)

$ docker version

配置镜像加速

针对Docker客户端版本大于 1.10.0 的用户
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://....."]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

Docker的基本使用

docker version
docker container ls -a
docker container rm <容器id>
docker ps #查看容器id
docker ps -a #查看包含退出的容器id
docker exec -it <容器id> /bin/bash  #进入容器
docker logs -f <容器id> #查看日志
docker images
docker image ls
docker pull nginx
docker rmi nginx (删除镜像)

docker pull mysql  (默认拉取最新的镜像)
mkdir -p /usr/local/mysqlData/test/data
mkdir -p /usr/local/mysqlData/test/conf
chmod 777 /usr/local/mysqlData/test

docker run -p 3306:3306 --name test_mysql -v /usr/local/mysqlData/test/data:/var/lib/mysql -v /usr/local/mysqlData/test/logs:/logs -e MYSQL_ROOT_PASSWORD=123456 -d mysql

Kubernetes 环境搭建 - MacOS

使用清华的 brew 镜像源

cd "$(brew --repo)"
git remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git

cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git

brew update

相关软件安装
kubectl
docker (for Mac)
minikube
virtualbox

brew update && brew install kubectl && brew cask install docker minikube virtualbox

校验软件版本信息

docker --version                # Docker version 18.03.1-ce, build 9ee9f40
docker-compose --version        # docker-compose version 1.21.1, build 5a3f1a3
docker-machine --version        # docker-machine version 0.14.0, build 89b8332
minikube version                # minikube version: v0.26.1
kubectl version --client        # Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.1", GitCommit:"d4ab47518836c750f9949b9e0d387f20fb92260b", GitTreeState:"clean", BuildDate:"2018-04-13T22:28:25Z", GoVersion:"go1.9.5", Compiler:"gc", Platform:"darwin/amd64"}

启动 kubernetes 集群

minikube start --bootstrapper=localkube

一会后,会有如下输出

Starting local Kubernetes v1.10.0 cluster...
Starting VM...
Downloading Minikube ISO
 150.53 MB / 150.53 MB [============================================] 100.00% 0s
Getting VM IP address...
WARNING: The localkube bootstrapper is now deprecated and support for it
will be removed in a future release. Please consider switching to the kubeadm bootstrapper, which
is intended to replace the localkube bootstrapper. To disable this message, run
[minikube config set ShowBootstrapperDeprecationNotification false]
Moving files into cluster...
Downloading localkube binary
 173.54 MB / 173.54 MB [============================================] 100.00% 0s
 0 B / 65 B [----------------------------------------------------------]   0.00%
 65 B / 65 B [======================================================] 100.00% 0sSetting up certs...
Connecting to cluster...
Setting up kubeconfig...
Starting cluster components...
Kubectl is now configured to use the cluster.
Loading cached images from config file.

恭喜!Minikube 为你启动了一个虚拟机,并在该虚拟机中运行了 Kubernetes 集群。

查看集群节点信息

➜  ~ kubectl get nodes
NAME       STATUS    ROLES     AGE       VERSION
minikube   Ready     <none>    15m       v1.10.0

常见问题及解决办法
kubectl 安装失败

➜ brew install kubectl
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 2 taps (caskroom/cask, homebrew/core).
==> Updated Formulae
pandoc-citeproc                                                   php                                                               php@7.0

Error: Failed to link all completions, docs and manpages:
  Permission denied @ rb_file_s_symlink - (../../../Homebrew/completions/zsh/_brew, /usr/local/share/zsh/site-functions/_brew)
Warning: kubernetes-cli 1.10.1 is already installed, it's just not linked
You can use `brew link kubernetes-cli` to link this version.

解决办法

sudo chown -R $(whoami) /usr/local/share/
brew link kubernetes-cli

https://www.runoob.com/docker/docker-install-mysql.html
https://blog.csdn.net/xsj34567/article/details/80940238

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容