Docker的安装及部署镜像到镜像仓库

Docker 笔记

注意

替换国内内网源:https://blog.csdn.net/otmqixi/article/details/81564515

docker 和 docker-compose 常用命令

# 查看当前镜像
docker images
# 查看当前运行镜像
docker ps
# 启动停止重启docker
systemctl start/stop/restart docker


# compose 启动等操作
docker-compose stop/start

docker 及 docker-compose 及 harbor 安装

安装docker

在线安装

yum install docker
systemctl start docker

离线安装

官网下载docker安装包,上传到服务器后解压到/usr/bin目录

# 解压
tar -zxvf docker-18.06.1-ce.tgz
# 复制到/usr/bin
cp docker/* /usr/bin/
# 将docker注册为服务
vim /etc/systemd/system/docker.service
# 编辑
[Unit]

Description=Docker Application Container Engine

Documentation=https://docs.docker.com

After=network-online.target firewalld.service

Wants=network-online.target

[Service]

Type=notify

# the default is not to use systemd for cgroups because the delegate issues still

# exists and systemd currently does not support the cgroup feature set required

# for containers run by docker

ExecStart=/usr/bin/dockerd

ExecReload=/bin/kill -s HUP $MAINPID

# Having non-zero Limit*s causes performance problems due to accounting overhead

# in the kernel. We recommend using cgroups to do container-local accounting.

LimitNOFILE=infinity

LimitNPROC=infinity

LimitCORE=infinity

# Uncomment TasksMax if your systemd version supports it.

# Only systemd 226 and above support this version.

#TasksMax=infinity

TimeoutStartSec=0

# set delegate yes so that systemd does not reset the cgroups of docker containers

Delegate=yes

# kill only the docker process, not all processes in the cgroup

KillMode=process

# restart the docker process if it exits prematurely

Restart=on-failure

StartLimitBurst=3

StartLimitInterval=60s

 

[Install]

WantedBy=multi-user.target

保存文件

# 添加权限
chmod -x /etc/systemd/system/docker.service
# 重新加载配置文件
systemctl daemon-reload
# 启动
systemctl start docker
# 设置开机启动
systemctl enable docker.service
# 查看docker状态
systemctl status docker
# 查看版本
docker -v

安装docker-compose

# 添加EPEL源
yum install -y epel-release
# 安装python-pip
yum install -y python-pip
# 安装docker-compose
pip install docker-compose
# 更新
pip install --upgrade pip
# 验证是否安装成功
docker-compose -version

# 报错出现python版本问题:
sudo pip install pyrsistent==0.16.1

https://blog.csdn.net/liuyunshengsir/article/details/79136379

Harbor 安装

注意:在devops中利用jeckins流水线打包镜像到harbor上,需要对jenkins的服务器安装docker环境,并保证能用docker login 命令登陆到harbor上

1.8 版本安装

环境要求:

​ 安装包:docker-18.06.1-ce.tgz格式

​ docker -version:12.03.0-ce +

​ docker-compos: 1.18.0 +

安装:

​ 官网下载压缩包,offline版本

​ 下载好上传到服务器目标目录,解压文件(tar -zxvf)

​ 进入目录 可以看到 harbor.yml文件编辑该文件

​ 基础配置只修改一下host和data_volume就可以,如需要加密则开启https配置(注意不要改http的端口否则会打不开页面)

mkdir /opt/application/harbor

​ 保存文件后执行 默认用户名密码 admin Harbor12345

./prepare

./install

docker-compose ps

docker-compose start

docker-compose stop

1.8登陆密码修改

2.0 版本安装

环境要求:

​ docker -vsersion: 18.09.9

​ docker-compose:1.26.2

安装:

​ 官网下载2.0版本的介质包,上传服务器目标目录,解压

​ 备份harbor.yml文件,并修改该文件中的hostname,并必须配置https,不配置无法登陆,这是2.0的要求。其他和1.8一样

​ 保存文件后使用命令 ./install 运行

Dockerfile 打包镜像文件

以test.jar为例,创建一个dockerfile文件,vim Dockerfile ,记得要把目标jar与dockerfile放到同一目录下

FROM java:8

MAINTAINER wangcr

ADD test.jar localtest.jar

EXPOSE 8085

ENTRYPOINT ["java","-jar","/localtest.jar"]

在文件中输入如上配置,来打包镜像,保存后,来进行编译镜像

docker build -t wangcr/test . 
# 后面的这个"."就是当前目录下的Dockerfile文件

打包好后查看当前所有镜像 docker images 可以看到我们编译好的镜像文件。

下面来运行该镜像

docker run -d --name test -p 8085:8085 wangcr/test

运行成功会返回一串uuid,然后我们来查看当前容器的状态: docker ps

docekr打包好镜像上传到harbor

本地镜像打标签

docker tag wangcr/test 47.102.222.230/paas/wangcr/test:v1.0
//wangcr/test 是本地镜像  后面是私有仓库的地址/项目名称/镜像名称:版本号

利用docker images 来查看当前打了标签的镜像

登陆内部镜像仓库

docker login 47.102.222.230
如果登陆http而提示https拒绝连接的话可以先配置一下(CentOs 系统)
https://www.cnblogs.com/mjiu/p/10304142.html
vim /etc/docker/daemon.json
{"insecure-registries":["http://47.102.222.230"]}
并运行命令重新加载
systemctl daemon-reload
systemctl restart docker
依旧不行(2.0版本)
就配置https ,利用openssl模块生成带ip地址的密钥证书,进行配置
harbor 使用登陆时https问题
https://blog.csdn.net/zsd498537806/article/details/79290732

上传镜像

docker push 47.102.222.230/paas/wangcr/test
// 注意不需要加http
posted @ 2020-10-19 11:27  冷酷午餐肉  阅读(506)  评论(0编辑  收藏  举报