Docker 项目发布
一,前提要求:
Docker通常运行在CentOS 7以上,因为Docker运行环境要求系统为64位,系统内核版本为3.8以上。
查看CentOS版本:cat /etc/centos-release
查看当前的内核版本:uname –r
Docker 分为两个分支版本: Docker CE 和 Docker EE。
Docker CE 即社区免费版,Docker EE 即企业版,强调安全,但需付费使用。
本文介绍 Docker CE 的安装使用。
如果要卸载docker,先查看docker安装包:
yum list installed | grep docker
移除旧的版本:sudo yum remove docker-engine.x86_64 1.7.1-0.1.el7
使用一个有sudo或root权限的帐号登录,更新现有的yum包:
sudo yum update
二,安装docker
1,在此提供两种docker安装方式:
1.1,使用脚本安装
执行docker安装脚本:curl -sSL https://get.docker.com/ | sh
1.2,使用yum包安装:
(1)安装需要的软件包:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
(2)添加软件源信息:
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
(3)使用yum命令安装docker:
sudo yum install docker-ce
2,启动docker服务:
sudo service docker start
3,验证安装是否成功,查看docker版本:
docker version
三,使用dockfile文件构建镜像:
- 创建目录:mkdir docker 进入目录:cd docker
- 在docker目录下创建Dockerfile文件 :vi Dockerfile
- Dockfile文件:
FROM centos
ENV JAVA_HOME=/usr/local/jdk/jdk1.8.0_65
ENV JRE_HOME= /usr/local/jdk/jdk1.8.0_65/jre
ENV CLASSPATH=.:$JAVA_HOME/lib/:$JRE_HOME/lib
ENV PATH =$JAVA_HOME/bin:$JRE_HOME/bin
FROM指明了当前镜像创建的基镜像
ENV指令用来定义镜像的环境变量
- 启动镜像:docker build -t demo-image:v1 . 或者 /root//docker
(.代表相对路径的当前路径,也可以用全路径,-t 镜像的名字及标签)
- 创建容器:docker run -p 80:80 --name demo-container
-v /docker:/user/local -d demo-image:v1
(容器会自动创建/user/local,若本机/docker不存在,也会自动创建)
- 下载jdk到本机docker文件夹下
- 进入容器并解压:tar -zxvf jdk-8u161-linux-x64.gz –C /user/local/jdk
(先在容器/user/local目录下创建/jdk)
- 验证:java –version
- 根据容器创建镜像:docker commit demo-container demo-image:v2
10,使用exit退出容器。
11,启动容器:docker run -p 81:80 --name demo-container
-v /docker:/user/local -d demo-image:v2 /bin/bash
12,把项目jar包上传到本机/docker目录 :demo-project.jar
13,进入容器:docker exec –it demo-container /bin/bash
14,启动jar: nohup java –jar /user/local /demo-project.jar >> /user/local /logs/demo-project.log 2>&1 &
四,使用docker commit构建镜像
1,在docker文件夹下拉镜像:docker pull centos
2,在镜像上运行容器:docker run --name demo-container -p 80:80
-v /docker: /user/local(主机目录映射容器目录) -d centos:latest /bin/bash
- 把jdk安装包上传到本机docker目录下
4,进入容器并解压:tar -zxvf jdk-8u161-linux-x64.gz –C /user/local/jdk
5,配置环境变量:vi /etc/profile(可省) vi ~/.bashrc(必须要)
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_65
export JRE_HOME= /usr/local/jdk/jdk1.8.0_65/jre
export CLASSPATH=.:$JAVA_HOME/lib/:$JRE_HOME/lib
export PATH =$JAVA_HOME/bin:$JRE_HOME/bin
- 保存:source etc/profile source ~/.bashrc
- 验证:java –version
8,创建镜像:docker commit demo-container demo-image:v1
9,启动容器:docker run -p 81:80 --name demo-container2
-v /docker:/user/local -d demo-image:v1 /bin/bash
10,把项目jar包上传到本机/docker目录 :demo-project.jar
11,进入容器:docker exec –it demo-container2 /bin/bash
12,启动jar: nohup java –jar /user/local /demo-project.jar >> /user/local /logs/demo-project.log 2>&1 &
上一篇: [OI]主席树小结
下一篇: LeetCode-链表总结