yum install docker #基于阿里源 可以直接下载

systemctl restart docker

ifconfig  #出现 docker0  说明环境部署成功

docker version      #  查看版本

#对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)    (也可以直接改为"registry-mirrors": ["https://e9yneuy4.mirror.aliyuncs.com"] )

{

"registry-mirrors": [

"https://dockerhub.azk8s.cn",

]

}

systemctl daemon-reload  重启systemctl配置文件   刷新/lib/systemd/systemd下的配置的

systemctl restart docke

docker info   #如果从结果中看到了如下内容,说明配置成功。

Registry Mirrors:

https://dockerhub.azk8s.cn/

registry-mirror=https://dockerhub.azk8s.cn) #docker 加速

docker pull   java:8-jre-alpine  #别人做好的镜像 可以直接拿来用

cd   /home/test

cp       hello.jar          /home/test/target

cp   /root/Dockerfile    /home/test

java -jar hello.jar        # 测试jar包

vim   Dockerfile

FROM java:8-jre-alpine      #网上下载好的镜像
WORKDIR
/home              
#工作目录
ADD ./target/hello.jar hello.jar  #jar包的路径 添加到容器
EXPOSE
8808                 
#web端口 看实际jar包跑的是多少端口号
VOLUME ["/home"]
ENTRYPOINT ["java", "-jar", "hello.jar",
">", "spring.log",
"&"]          #dockerfill的命令
  “>” 重定向 是  输出日志到一个文#件        #&是后台运行    这一条也是执行的命令 java环境用 cmd命令会被外部命令覆盖  这个不会 、/bin/bash 有关

参考
nohup java -jar /root/java.jar > spring.log &

docker build -t dgcmt/app  .  #制作成镜像   可以docker images 查看   dgcmt/app # 自定义的镜像名称

192.168.1.115 8808  dygaContentManagement-app                      #前面是docker本机的ip地址  后面为复制的包名   端口号看包
192.168.1.115 8812  dygaContentManagement-service

docker exec -it 9c97898a932b /bin/sh

docker run -itd -p 8812:8812 dgcmt/service:latest   #测试运行 端口映射
#http://ip:端口

(harbor
http://192.168.1.197
admin
12345  #访问镜像仓库)

vi /etc/docker/daemon.json
{ "insecure-registries": [ "192.168.1.197" ] }  #本机配置,指定访问的私有仓库 为push 做准备

systemctl daemon-reload && systemctl restart docker
docker login 192.168.1.197 -uadmin -p12345  #本机登录私有仓库 不登录push不上去
docker tag dgcmt/app:latest 192.168.1.197/library/dgcmt/app:latest   #给镜像打标签

docker push 192.168.1.197/library/dgcmt/app:latest   #上传镜像到私有仓库

docker pull 192.168.1.197/library/dgcmt/app:latest  #下载镜像使用(需要删除之前存在的docker镜像)

脚本 批量执行jar包   (此脚本 实现docker tag与push的一次多个 批量上传)

#!/bin/bash
A=dygacontentmanagement-service
A1=dygacontentmanagement/service
B=dygacontentmanagement-app
B1=dygacontentmanagement/app
C=dygacontentmanagement-app
C1=dygacontentmanagement/app
D=dygasport-service
D1=dygasport/service
E=dygawelfare-app
E1=dygawelfare/app
F=dygawelfare-service
F1=dygawelfare/service

# rmi images
docker rmi $A1 $B1 $C1 $D1 $E1 $F1
docker rmi 192.168.1.197/library/$A1 192.168.1.197/library/$B1 192.168.1.197/library/$C1 192.168.1.197/library/$D1
docker rmi 192.168.1.197/library/$E1 192.168.1.197/library/$F1

cd /built/$A
docker build -t $A1 .
docker tag $A1:latest 192.168.1.197/library/$A1:latest
docker push 192.168.1.197/library/$A1:latest

cd /built/$B
docker build -t $B1 .
docker tag $B1:latest 192.168.1.197/library/$B1:latest
docker push 192.168.1.197/library/$B1:latest

cd /built/$C
docker build -t $C1 .
docker tag $C1:latest 192.168.1.197/library/$C1:latest
docker push 192.168.1.197/library/$C1:latest

built 为事先创建好的文件 里面全部放的是 目录与shell脚本 目录里面是jar包与Dockerfill文件

sudo 临时获得管理员权限 root

sudo su 加脚本名  不用管他有没有权限

当我得到一个jar包 , 首先 在docker 已经做好基础环境下 先去8号机 创建一个目录 同jar包同名 如 : abc.jar 将已经做好的Dockerfile文件 复制到当前文件夹下

修改一下端口号,修改一下文件名 (2处) 文件做好 , 把jar包也cp过来 ,,一次做多个文件  , 创建可以执行的脚本 也可以cp过来 放在与目录abc.jar同级。脚本里面 把定义的变量值做下修改就可以了 ,现在还不可直接执行脚本  需要login一下  登录一下私有仓库 并为本机指定要访问的仓库地址。

如以下操作:

{ "insecure-registries": [ "192.168.1.197" ] } 本公司私有仓库,内网ip地址 ,同一内网环境
#  { "registry-mirrors": ["https://rncxm540.mirror.aliyuncs.com"] } 已经注释的为阿里的仓库
注意 : 一定要修改端口号 , 开发会一并给过来

做本机的端口映射 , 如外网访问本机的80端口 其实内部访问的是8805.。。。。。。。

最新文章

  1. How to increase TX Power Signal Strength of WiFi
  2. Laravel Predis Error while reading line from the server.
  3. 安装Sql server 2008时出现sql server 2005 express tools failed 怎么办?
  4. TSQL Challenge 2
  5. canvas ---1
  6. ORA-600[kcratr_scan_lastbwr]逻辑坏块解决
  7. 内嵌的Component调用外部的方法
  8. Constructing continuous functions
  9. mybatis抽取出的工具-(一)通用标记解析器(即拿即用)
  10. hdu 4135 a到b的范围中多少数与n互质(容斥)
  11. SqlServer 四大排名函数(ROW_NUMBER、RANK、DENSE_RANK、NTILE)简介
  12. c++结构体的排序
  13. apache禁止IP访问网站
  14. WEB框架Django之Form组件
  15. 监控IIS的运行状态
  16. python assert 断言语句的作用
  17. struts2(六) 文件上传和下载
  18. STL_std::iterator
  19. RxJava重温基础
  20. JAVA学习前十天:小结、面向对象之”扑克牌“例子

热门文章

  1. 从MySQL迁移到MariaDB(CentOS)
  2. scapy构造打印ARP数据包
  3. 洛谷 P1960 列队
  4. (十九)c#Winform自定义控件-停靠窗体
  5. Django Mysql数据库-基于双下划线的跨表查询
  6. linux环境下测试环境搭建
  7. AQS源码解析(一)-AtomicBoolean源码解析
  8. Hibernate中Criteria的完整用法2
  9. Docker系列之镜像瘦身(五)
  10. 一文了解Python常见的序列化操作