zoukankan      html  css  js  c++  java
  • docker搭建本地仓库并制作自己的镜像

    原文地址https://blog.csdn.net/junmoxi/article/details/80004796

    1. 搭建本地仓库
    1.1 下载仓库镜像
    1.2 启动仓库容器
    2. 在CentOS容器中安装JDK
    2.1 下载CentOS容器
    2.2 运行Linux容器:
    2.3 将JDK复制到myCentos容器中
    2.4 进入容器
    2.5 解压JDK
    2.6 配置环境变量
    2.6.1 刷新环境变量
    2.6.2 设置开机自动执行source
    2.6.3 重启容器
    2.7 将容器提交到镜像里
    3. 将新制作的镜像推送到仓库中
    3.1 修改tag
    3.2 将镜像推送到仓库中

    1. 搭建本地仓库

    1.1 下载仓库镜像
    docker pull registry

    1.2 启动仓库容器
    docker run -d -p 5000:5000 -v /home/registry/:/tmp/registry registry

    第一个5000是本地的端口,第二个5000是docker里面的端口,将本地5000的端口映射到
    docker里面的5000端口

    2. 在CentOS容器中安装JDK
    2.1 下载CentOS容器
    镜像仓库地址:https://dashboard.daocloud.io/packages/explore

     

    docker pull daocloud.io/library/centos:latest

    2.2 解压镜像 运行Linux容器:
    docker run -d -it --name myCentos 镜像ID /bin/bash

    -d 后台运行
    –name 容器名


    2.3 将JDK复制到myCentos容器中
    docker cp jdk-10.0.1_linux-x64_bin.tar.gz myCentos:/usr/local

    2.4 进入容器
    docker exec -it myCentos /bin/bash

    2.5 解压JDK
    tar -zxvf jdk-10.0.1_linux-x64_bin.tar.gz

    2.6 配置环境变量
    vi /etc/profile

    在文件末尾添加:

    export JAVA_HOME=/usr/local/jdk1.8.0_152 
    export PATH=$JAVA_HOME/bin:$PATH 
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    2.6.1 刷新环境变量
    source /etc/profile

    2.6.2 设置开机自动执行source
    vi ~/.bashrc

    在第一行添加 source /etc/profile

    2.6.3 重启容器
    docker stop myCentos
    docker start myCentos

    2.7 将容器提交到镜像里
    docker commit <CONTAINERID> <IMAGE>

     

    3. 将新制作的镜像推送到仓库中
    3.1 修改tag
    docker tag <REPOSITORY> 仓库IP地址:端口/镜像名

    tag名应该为 ip:端口/镜像名 的形式,它会将此镜像推送到此IP地址下的仓库,并且定义此镜像名

     

    3.2 将镜像推送到仓库中
    docker push tag名

    可通过http://139.199.64.253:5000/v2/_catalog地址访问你上传的结果

    注意:如果push报错:The push refers to a repository [139.199.64.253:5000/java] 
    Get https://139.199.64.253:5000/v1/_ping: http: server gave HTTP response to HTTPS client 
    则修改 /etc/docker 路径下的 daemon.json 文件,如果没有则手动创建,在文件中写入: 
    { “insecure-registries”:[“139.199.64.253:5000”] } 
    然后重启docker: service docker restart 
    重新启动仓库:docker run -d -p 5000:5000 -v /home/registry/:/tmp/registry registry

    如果想推送到docker的中央仓库则 tag名改为 : docker.io/java 然后再推送即可

  • 相关阅读:
    如何调用ActiveX网页中的JavaScript函数
    VC++开发的ActiveX如何加入安全机制,避免IE中提示“在此页上的ActiveX控件和本页上的其他部分的交互可能不安全,你想允许这种交互吗?”
    ActiveX多线程回调JavaScript
    JavaScript脚本如何访问VC++开发的ActiveX中的方法
    ActiveX异步回调JavaScript
    com/atl套间编程中如何实现定时invoke容器中的方法
    VC++开发的ActiveX如何通过JavaScript脚本和EOS应用交互
    thread wrapper
    最新Mysql中文帮助
    如何避免重复的http请求
  • 原文地址:https://www.cnblogs.com/111testing/p/9695312.html
Copyright © 2011-2022 走看看