http(非加密) harbor 搭建
1.安装以及操作docker
首先安装docker 安装步骤以及介绍可以参考这里。我以前的文章.
可能会用到的指令
启动Docker服务
systemctl start docker
停止Docker服务
systemctl stop docker
重启Docker服务
systemctl restart docker
查看Docker服务状态
systemctl status docker
开机自启Docker服务
systemctl enable docker
查看防火墙是否开启
systemctl status firewalld.service
关闭防火墙
systemctl stop firewalld.service
开启防火墙服务
systemctl start firewalld.service
2. 安装 docker-compose
首先检查 Linux 有没有安装 python-pip 包:yum install python-pip。
没有 python-pip 包就执行:yum install epel-release -y 命令。
执行成功之后,再次执行:yum install python -y。
执行: yum install docker-compose -y 看是否执行成功
检验成功: rpm -qa docker-compose 查看是否显示版本号
未成功成功继续如下
对安装好的 pip 进行升级:pip install --upgrade pip。
升级完 pip 工具之后,使用:pip install docker-compose 安装 docker-compose。
3. harbor下载安装
harbor下载地址: 点击这里.
我下载的是 v1.10.3-rc2 版本
4.以http 方式构建简单harbor仓库
4.1.解压
tar -xvf 文件
4.2.配置yml
1.改hostname
2.把http 的端口可以改掉。(https的全部注掉)
3.修改管理员密码
4.修改data_volume 路径结合自己
5.修改Log location 路径结合自己
6.注掉 https
7.cd到安装目录下执行./install (此步最好等全部配置好在启动)
如果你已经启动harbor在想修改 需要以下命令
docker-compose down 关闭harbor
./prepare 重新加载yum 文件
docker-compose up –d 重启harbor
8.docker-compose ps 查看容器运行情况
9.修改host /etc/hosts 文件 加入 ip地址 域名
配置免https(将docker关闭)
方法一:修改 /etc/docker/daemon.json
# 加上 允许的仓库
{
"insecure-registries":[
"10.10.55.55"
]
}
方法二
cd /usr/lib/systemd/system
vi docker.service
修改 ExecStart,末尾添加 --insecure-registry 参数
systemctl daemon-reload 重新加载 配置文件
systemctl restart docker 重新开启docker
启动harbor即可
Https (加密)harbor 构建篇(不用即记录)
首先 找个目录 生成证书
生成秘钥和自签名证书:
openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -days 365 -out ca.crt
生成证书签名请求(域名改为自己harbor里的)这里为(harbor.centos123.com.)
openssl req -newkey rsa:4096 -nodes -sha256 -keyout harbor.centos123.com.key -out harbor.centos123.com.csr
生成服务器证书:(域名改为自己harbor里的)这里为(harbor.centos123.com.)
openssl x509 -req -days 365 -in harbor.centos123.com.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out harbor.centos123.com.crt
生成后 放入目录 修改harbor.yml 文件里 地址
最后别忘了把proxy 的http注掉
docker 配置 https
Harbor采用https的方式交换数据,Docker客户端处需要配置签署 harbor 证书的 CA 证书。
在Docker客户端服务器上创建指定目录:/etc/docker/certs.d/[IP地址或域名]
mkdir -p /etc/docker/certs.d/[IP地址或域名]
拷贝CA证书到上述目录中
操作篇(http)
linux 机 需要修改自己的docker
systemctl stop docker 停止Docker服务
cd /usr/lib/systemd/system
vi docker.service
修改 ExecStart,末尾添加 --insecure-registry 参数
systemctl start docker 启动Docker
widows10 机修改自己docker
右键鲸鱼 进入setting
加入
{
"registry-mirrors": [],
"insecure-registries": [
"10.11.24.188"
],
"debug": true,
"experimental": false
}
登录测试
docker login 10.11.24.188
admin
123456
登录成功
docker pull busybox:latest # 先从网络上拉取一个busybox镜像
docker tag busybox:latest 10.11.24.188/public/busybox:latest #打上你所想要的tag,私有仓库路径和项目名写在镜像名前。
docker push 10.11.24.188/public/busybox:latest #上传成功可去harbor页面查看
docker pull 10.11.24.188/public/busybox:latest 拉取操作
后续docker 镜像相关指令
1.查看镜像
docker images
2.docker ps
查看运行容器 以及端口 避免端口占用
(如图)宿主机的80端口: 映射的容器的内8080端口 协议为tcp
3.创建并启动容器
docker run 参数
无需映射端口创建容器,并以守护进程运行 如下
docker run -id --name=c2 镜像名:版本号 (c2 为容器名自己定即可)
射端口创建容器,并以守护进程运行 如下
docker run -id --name=c3 -p 3307:3306 镜像名:版本号
映射规则为
宿主机的3307 映射到 容器的3306端口
示例:以zzm 创建的jar包镜像为例:首先查询
无映射端口创建容器,并以守护进程运行 如下
其余docker镜像相关操作可以参考: 点击这里.
其余容器与宿主机间的通讯可以参考:点击这里.