1. docker 的安装

安装环境:

ubuntu 64位

步骤一:获取最新版本的 Docker 安装包

wget -qO- https://get.docker.com/ | sh    

安装完成后有个提示:

  If you would like to use Docker as a non-root user, you should now consideradding your user to the "docker" group with something like:sudo usermod -aG docker runoobRemember that you will have to log out and back in for this to take effect!  

大概的意思就是:docker进程使用Unix Socket而不是TCP端口。而默认情况下,Unix socket属于root用户,需要root权限才能访问。

步骤二:添加权限

docker守护进程启动的时候,会默认赋予名字为docker的用户组读写Unix socket的权限,因此只要创建docker用户组,并将当前用户加入到docker用户组中,那么当前用户就有权限访问Unix socket了,进而也就可以执行docker相关命令

sudo groupadd docker     #添加docker用户组
sudo gpasswd -a $USER docker     #将登陆用户加入到docker用户组中
newgrp docker     #更新用户组
docker ps    #测试docker命令是否可以使用sudo正常使用

步骤三:启动docker

sudo service docker start

步骤四:测试运行hello-world

runoob@runoob:~$ docker run hello-world

2. docker 安装jdk

docker pull java:8

等就完事了

3. docker 部署resin项目

先查看一下我的目录结构

步骤一:新建一个目录 /var/local/resin

mkdir  /var/local/resin

步骤二:把 resin-4.0.57.tar.gz 解压后的包扔到 /var/local/resin 中

tar -zxvf resin-4.0.57.tar.gz /var/local/resin 

步骤三:在/var/local/resin目录写Dockerfile

vim Dockerfile
# 引入jdk
FROM java:latest
#重命名resin
ADD resin-4.0.57
/var/local/resin/resin4
EXPOSE 8080
CMD ["/var/local/resin/resin4/bin/resin.sh","console"]

步骤四:利用Dockerfile来生成镜像。在/var/local/resin目录写 build.sh

vim build.sh
docker build -t resin4:latest .

其中 -t表示后面是镜像名,冒号后面是版本 .代表当前目录

执行docker images可以查看所有镜像去验证

步骤五:如果你之前启动了该镜像,那么就要在下次启动前,先把前一个启动的镜像实例关掉。在/var/local/resin目录写 remove.sh

vim remove.sh
docker rm -f taf-admin


taf-admin是启动的镜像的名字,在步骤六可以看到。

步骤六:启动该镜像,这里我把项目taf-admin.war挂载到resin的webapps中

先把项目移到/var/local/resin中。

然后写一个脚本 run.sh

docker run -d --name taf-admin -v /var/local/resin/taf-admin.war:/usr/local/resin/resin4/webapps/taf-admin.war -p 8081:8080 resin4:latest
  • -d代表在后台运行
  • –name代表镜像启动的名称
  • -v代表把war包挂载到resin上
  • -p代表端口,8081是外部端口
  • resin:lastest是镜像的名称

然后就可以在外部访问到 localhost:8081/taf-admin 了

4. docker 常用命令

1.查看docker详情

docker info


2. 查看正在运行的镜像

docker ps


3.查看所有镜像

docker images


4.运行镜像

docker run -d --name taf-admin -v /var/local/resin/taf-admin.war:/usr/local/resin/resin4/webapps/taf-admin.war -p 8081:8080 resin4:latest
  • -d代表在后台运行
  • –name代表镜像启动的名称
  • -v代表把war包挂载到resin上
  • -p代表端口,8081是外部端口
  • resin:lastest是镜像的名称

特别地 在run上加上 -it 然后在末尾加上bash
会直接进入到镜像中,前提是该镜像还没启动:

docker run -it tomcat bash

这里产生了错误,原因是之前有一个同名(my-tomcat)的镜像启动了,所以要先 要通过 docker rm -f my-tomcat先把前一个启动的镜像移除

那么如果需要在镜像启动之后 ,通过某条命令进入镜像,怎么办呢?通过:

docker exec -it 镜像实例名 bash

镜像实例名不是my-tomcat,而是这个

5.删除镜像

docker rmi 镜像实例名

docker部署resin应用相关推荐

  1. Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo

    Docker 部署SpringBoot项目整合 Redis 镜像做访问计数Demo 最终效果如下 大概就几个步骤 1.安装 Docker CE 2.运行 Redis 镜像 3.Java 环境准备 4. ...

  2. Docker 部署SpringBoot项目不香吗?

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:流星007 链接:toutiao.com/i68433912 ...

  3. docker部署springboot_Docker+SpringBoot快速构建和部署应用

    前言 Docker技术发展为当前流行的微服务提供了更加便利的环境,使用SpringBoot+Docker部署和发布应用,其实也是一件比较简单的事情.当前,前提是得有Docker的基础. 构建一个Spr ...

  4. docker初体验:docker部署nginx负载均衡集群

    Docker 是一个用于开发,交付和运行应用程序的开放平台.Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件.今天来为大家演示一下docker部署nginx负载均衡集群 环境 ce ...

  5. docker初体验:docker部署nginx服务

    Docker 是一个用于开发,交付和运行应用程序的开放平台.Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件.今天来为大家演示一下docker部署nginx 环境 centos7 ...

  6. Docker系列 四.Docker部署SpringBoot

    四.Docker部署SpringBoot 环境&工具: 阿里云轻量级服务器.CentOS 7系统.FinalShell(其他连接客户端也可以).IDEA 1. 创建springboot项目 这 ...

  7. Docker部署文档

    Docker部署文档 目录 Docker部署文档 1 一.什么是Docker 3 1.1Docker简介 3 1.2对比传统虚拟机总结 4 1.3Docker通常用于如下场景: 5 1.4基本概念 5 ...

  8. Docker部署Zookeeper集群

    Docker部署Zookeeper集群 官方网站: http://zookeeper.apache.org/ http://zookeeper.apache.org/doc/r3.4.8/zookee ...

  9. 部署go的web应用_使用Docker部署Go Web应用

    为什么需要Docker? 使用docker的主要目标是容器化.也就是为你的应用程序提供一致的环境,而不依赖于它运行的主机. 想象一下你是否也会遇到下面这个场景,你在本地开发了你的应用程序,它很可能有很 ...

最新文章

  1. oracle sql语句中包含‘’ 的解决方法
  2. 1.微型计算机中主要包括有( ).,《微机原理与应用(1)1351》16秋在线作业2
  3. Python批量运行Gprmax仿真并快速提取雷达波走时和振幅
  4. 进程间通信(匿名管道、命名管道、共享内存)
  5. html流光按钮,【CSS】css实现流光效果-按钮流光显示效果-自发光
  6. mysql 无符号 负数_mysql下有符号数和无符号数的相关问题
  7. ELK下Elasticsearch如何关掉服务
  8. Codechef QGRID
  9. phpzend框架_PHP框架Zend
  10. 美图秀秀怎么去水印-美图秀秀怎么去水印图片教程
  11. newifi3 高恪魔改_newifi新路由3一键刷breed刷机教程及高恪固件 | 小闻网
  12. 【转】C#调用Windows图片和传真查看器打开图片
  13. Android O、N版本修改dex2oat编译选项,减少占用ROM空间或者加快安装速度
  14. 如何在产品功能维度评价APP
  15. 【pwn】攻防世界 pwn新手区wp
  16. 2015淘宝最新排名新规则
  17. linux内核路由转发表的组成,linux路由转发表的检索过程(fib_lookup)
  18. 大数据学习总结+JAVA学习总结+大数据面试+java面试+大数据java异常总结
  19. 教你如何清除上网记录
  20. 阿里云国际代理商:阿里云AI城市大脑项目在九江启动运行

热门文章

  1. 利用 AVDictionary 配置参数
  2. 给网游写一个挂吧(三) – 启动外挂下
  3. 使用IDA PRO+OllyDbg+PEview 追踪windows API 动态链接库函数的调用过程
  4. 这是我看过关于 volatile 最好的文章
  5. 干货 | Elasticsearch开发人员最佳实战指南
  6. 武汉疫情之后,中国即将发生的10大变化!(强烈推荐)
  7. RabbitMQ之监控(3)
  8. 深度解密Go语言之sync.map
  9. 本地存储和移动端js框架及bootstrap简介
  10. 最佳实践:HTAP数据库TBase助力某省级单位核心系统IT架构升级