docker教程—dockerfile實戰

本教程將經過ubuntu做爲基礎鏡像,配置java運行環境,運行實際SpringBoot項目html

首先梳理一下要運行一個java項目咱們須要作那些事:java

一、準備一臺服務器linux

二、配置java環境   docker

    2.1    下載JDKshell

    2.2    將JDK複製到服務端
    2.3    解壓下載的JDK壓縮包
    2.4    配置環境變量ubuntu

    2.5    將項目SpringBoot項目jar包複製到指定路徑下vim

    2.6    運行jar包centos

按照以上步驟,咱們一步步操做(本人服務器爲Ubuntu)bash

  • 下載JDK    

https://www.oracle.com/technetwork/java/javase/downloads/index.html

在以上網址下載合適版本的JDK,服務器

  • 將下載的JDK複製到服務端

scp /jdk路徑/jdk-8u211-linux-x64.tar.gz ubuntu@服務端IP:/編寫dockerfile的位置/docker-centos-vim
  • 書寫dockerfile

# 選擇基礎鏡像  我選擇Ubuntu
FROM ubuntu:tag #tag爲版本
# 添加維護者信息
LABEL version="1.0"  #版本
LABEL description="this is an Image for Springboot application"  #基本描述
LABEL maintainer="haoyuehong91@163.com" #維護者信息
# 配置JDK
# 1.將宿主機上的JDK ADD容器內部 爲何用ADD不用COPY呢 由於ADD會解壓 還有JDK最好跟dockerfile在同一目錄
ADD  jdk-8u211-linux-x64.tar.gz /soft/
# 配置環境變量
ENV JAVA_HOME /soft/jdk1.8.0_211
ENV JRE_HOME ${JAVA_HOME}/jre
ENV CLASSPATH .:${JAVA_HOME}/lib:${JAR_HOME}/lib
ENV PATH ${M2_HOME}/bin:$PATH
# 將項目jar包COPY到容器中 用COPY由於不會解壓
COPY admin-0.0.1-SNAPSHOT.jar /app/
# 暴露端口
EXPOSE 9000
# 切換工做目錄
WORKDIR /app/
# 運行jar包
# ENTRYPOINT ["java","-jar","/app/admin-0.0.1-SNAPSHOT.jar"] 或shell方式
ENTRYPOINT nohub java -jar admin-0.0.1-SNAPSHOT.jar&
  • 建立鏡像

docker build -t image_name .

千萬別忘記後面的 . 

image_name 是鏡像名稱

  • 構建容器

docker run -d --name container -p 9000:8000 image_nmae

-d 表明守護進程  若是但願交互式 將-d改成 -it  

--name 後面是自定義名稱 

-p 端口映射  以上表明將容器內的8000端口映射到宿主機9000端口上

相關文章
相關標籤/搜索