容器云docker

 

Docker 仓库(Harbor版)
    构建https证书
        生成 CA 证书
mkdir -p /data/ssl
cd /data/ssl/
openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -days 2.235 -out ca.crt
        生成证书签名请求
openssl req -newkey rsa:4096 -nodes -sha256 -keyout www.yidaoyun.com.key -out www.yidaoyun.com.csr
        生成注册表主机的证书
openssl x509 -req -days 2.235 -in www.yidaoyun.com.csr -CA ca.crt 10 -CAkey ca.key -CAcreateserial -out www.yidaoyun.com.crt
        分发证书
 cp -rfv www.yidaoyun.com.crt /etc/pki/ca-trust/source/anchors/
update-ca-trust enable
update-ca-trust extract
    安装 docker-compose
        mv docker-compose /usr/local/bin/
chmod +x /usr/local/bin/docker-compose
docker-compose --version
    安装Harbor仓库
        下载 Harbor 安装包
tar -zxvf harbor-offline-installer-v1.5.3.tgz -C /opt/
        进入到 harbor 目录
cd /opt/harbor/
        编辑配置文件
vi harbor.cfg
hostname = 10.24.2.37 #修改 harbor 的启动 ip,这里需要依据系统 ip 设置
ui_url_protocol = https #启用加密传输协议 https
ssl_cert = /data/ssl/www.yidaoyun.com.crt #证书的位置
ssl_cert_key = /data/ssl/www.yidaoyun.com.key #证书密钥位置
harbor_admin_password = 000000 #修改 harbor 的 admin 用户的密码
        安装 Harbor
./prepare
    镜像管理与安全
        配置本地 deamon.json 文件
{ "registry-mirrors": ["https://5twf62k1.mirror.aliyuncs.com"], "insecure-registries": ["10.24.2.37"] }
systemctl restart docker

        重新启动 Harbor 私有镜像仓库
 ./prepare
        清理所有 Harbor 容器进程
cd /opt/harbor
docker-compose down
docker-compose up -d
        上传镜像
docker tag centos:latest 10.24.2.37/library/centos:latest
docker login https://10.24.2.37
docker push 10.24.2.37/library/centos:latest
        重新启用漏洞扫描
./install.sh --with-notary --with-clair

Docker 仓库的使用(registry版)
    构建私有仓库
        在搭建好docker的环境下运行 Registry仓库
./image.sh
docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest
        查看运行情况
docker ps
    私有仓库的使用
        上传镜像
cat /etc/docker/daemon.json
{ "insecure-registries": ["10.18.4.30:5000"] }
systemctl restart docker
        上传标记的镜像:docker push 10.18.4.30:5000/centos:latest
        为镜像打上标记:docker tag centos:latest 10.18.4.30:5000/centos:latest
        curl 命令查看仓库中的镜像
curl -L http://10.18.4.30:5000/v2/_catalog
        拉取镜像
docker pull 10.18.4.30:5000/centos:latest

Docker 引擎安装
    安装依赖包
yum install -y yum-utils device-mapper-persistent-data
    安装 docker-ce
yum install docker-ce-18.09.6 docker-ce-cli-18.09.6 containerd.io -y
    启动 Docker
systemctl daemon-reload
systemctl restart docker
systemctl enable docker
    查看 Docker 的系统信息
docker info

基础环境配置
    提供的压缩包解压
tar -zxvf Docker.tar.gz
    配置本地 YUM 源
cat /etc/yum.repod.s/local.repo [kubernetes]
name=kubernetes baseurl=file:///root/Docker
gpgcheck=0
enabled=1
    升级系统内核
yum upgrade -y
uname -r
    配置防火墙及 SELinux
systemctl stop firewalld && systemctl disable firewalld
iptables -t filter -F
iptables -t filter -X
iptables -t filter -Z
/usr/sbin/iptables-save
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
reboot
    开启路由转发
 cat >> /etc/sysctl.conf << EOF
net.ipv4.ip_forward=1 net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 EOF
modprobe br_netfilter
sysctl -p

Docker 引擎的安装
    Docker 镜像和容器的使用
        镜像的基本管理和使用
            查看镜像列表
 ./image.sh
docker images
            运行容器
docker run -i -t -d httpd:2.2.31 /bin/bash
            查找镜像
docker search --filter=stars=10 java
 --automated:只列出 automated build 类型的镜像。
 --no-trunc:显示完整的镜像描述。
 --filter=stars:列出收藏数不小于指定值的镜像.
            从容器创建一个新的镜像
# docker commit -a "xiandian" -m "nginx-test" 5d42a9fafeb6 nginx:v1
        docker命令
            docker tag 语法
docker tag IMAGE:TAG/]REPOSITORY[:TAG]
            docker images
REPOSITORY:表示镜像的仓库源。
TAG:镜像的标签。
IMAGE ID:镜像 ID。
CREATED:镜像创建时间。
SIZE:镜像大小。
            docker run
 -i:交互式操作。
 -t:终端。
 -d:后台运行。
 httpd:2.2.31:镜像名,使用 https:2.2.31 镜像为基础来启动容器。
 /bin/bash:容器交互式 Shell。
            获取镜像语法
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
            查找镜像
 docker search [OPTIONS] TERM
            删除镜像
 docker rmi [OPTIONS] IMAGE [IMAGE...]
-f:强制删除。
 --no-prune:不移除该镜像的过程镜像,默认移除。
            启动容器
docker start [CONTAINER ID]
            列出所有容器(包含终止状态)
docker ps -a
            查看具体容器的信息
docker inspect [container ID or NAMES]
            查看容器的使用资源状况
docker stats [container ID or NAMES]
            进入容器
 docker exec -it [CONTAINER ID] bash
            删除终止状态的容器
docker rm [CONTAINER ID]
            删除运行中的容器
docker rm -f [CONTAINER ID]
            导入/导出容器
docker export [CONTAINER ID] > [tar file]
cat [tar file] | docker import - [name:tag]
            将镜像保存为文件
docker save -o [tar file] IMAGE
            从容器创建一个新的镜像
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
-a:提交的镜像作者
-c:使用 Dockerfile 指令来创建镜像
-m:提交时的说明文字
-p:在 commit 时,将容器暂停
        Dockerfile
            docker build 命令构建新镜像
                docker build -t="centos-jdk" .
            FROM:指定基础镜像,必须为第一个命令。
MAINTAINER:维护者信息。
RUN:构建镜像时执行的命令。
ADD:将本地文件添加到容器中,tar 类型文件会自动解压(网络压缩资源不会被解 压),可以访问网络资源,类似 wget。
COPY:功能类似 ADD,但是是不会自动解压文件,也不能访问网络资源。
CMD:构建容器后调用,也就是在容器启动时才进行调用。
ENTRYPOINT:配置容器,使其可执行化。配合 CMD 可省去“application”,只使 用参数。
LABEL:用于为镜像添加元数据。
ENV:设置环境变量。
EXPOSE:指定与外界交互的端口。
VOLUME:用于指定持久化目录。
WORKDIR:工作目录,类似于 cd 命令。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值