您好,登錄后才能下訂單哦!
本篇文章為大家展示了springboot項目怎么在Linux+Docker環境中運行,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
一:咱們首先要有一個運行Docker環境
第一步:使用 yum 安裝(CentOS 7下)
Docker 要求 CentOS 系統的內核版本高于 3.10 ,查看本頁面的前提條件來驗證你的CentOS 版本是否支持 Docker 。
通過 uname -r 命令查看你當前的內核版本
[root@iZbp1gp1t778obaz5m8vk8Z ~]# uname -r 3.10.0-957.21.3.el7.x86_64
第二步:安裝 Docker
Docker 軟件包和依賴包已經包含在默認的 CentOS-Extras 軟件源里,安裝命令如下:
[root@iZbp1gp1t778obaz5m8vk8Z ~]# yum -y install docker
安裝完成。
第三步:啟動 Docker 后臺服務
[root@iZbp1gp1t778obaz5m8vk8Z ~]# service docker start
第四步:測試運行 hello-world
[root@izwz99z5o9dc90keftqhlrz ~]# docker run hello-world Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://hub.docker.com/ For more examples and ideas, visit: https://docs.docker.com/get-started/
由于本地沒有hello-world這個鏡像,所以會下載一個hello-world的鏡像,并在容器內運行,好了咱們開始真實的使用。
第一步:創建運行docker 的運營賬號 新增加-與后面的文檔內容無關【運營一般是不能用root去干的哈】
[root@iZbp1gp1t778obaz5m8vk8Z ~]# useradd -d /home/hn-docker -m hn-docker #創建一個運營賬號 [root@iZbp1gp1t778obaz5m8vk8Z ~]# [root@iZbp1gp1t778obaz5m8vk8Z ~]# passwd hn-docker #修改密碼 Changing password for user hn-docker. New password: BAD PASSWORD: The password contains the user name in some form Retype new password: passwd: all authentication tokens updated successfully. [root@iZbp1gp1t778obaz5m8vk8Z ~]# sudo groupadd docker #添加docker用戶組,如果已有就不用 [root@iZbp1gp1t778obaz5m8vk8Z ~]# sudo gpasswd -a hn-docker docker ##將登陸用戶加入到docker用戶組中 Adding user hn-docker to group docker
第二步:開始做docker的運維
[root@izwz99z5o9dc90keftqhlrz Docker]# pwd /root/Docker [root@izwz99z5o9dc90keftqhlrz Docker]# [root@izwz99z5o9dc90keftqhlrz Docker]# [root@izwz99z5o9dc90keftqhlrz Docker]# mkdir elasticsearch [root@izwz99z5o9dc90keftqhlrz Docker]# [root@izwz99z5o9dc90keftqhlrz Docker]# cd elasticsearch/ [root@izwz99z5o9dc90keftqhlrz elasticsearch]#
1、運行mvn install 將項目打包成jar包
2、復制jar包到當前創建的文件夾中,和Dockerfile文件到一個文件夾下
[root@izwz99z5o9dc90keftqhlrz elasticsearch]# touch Dockerfile [root@izwz99z5o9dc90keftqhlrz elasticsearch]# vi Dockerfile # 基礎鏡像使用java FROM java:8 # 作者 MAINTAINER shixiong <741096017@qq.com> # VOLUME 指定了臨時文件目錄為/tmp。 # 其效果是在主機 /var/lib/docker 目錄下創建了一個臨時文件,并鏈接到容器的/tmp VOLUME /tmp # 將jar包添加到容器中并更名為app.jar,可以使用相對路徑、絕對路徑,這里相對路徑 ADD springboot-es6.jar /springboot-es6.jar # 運行jar包 RUN bash -c 'touch /springboot-es6.jar' #設置時區-不然比當前時間慢8小時 RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/springboot-es6.jar"]
3、進入該文件夾,然后運行命令,帶版本,不帶版本 運行時不一樣喲!!!
[root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker build -t springboot-es6:v1.0 . 上面的配置:運行時命令為: [root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker run -d -p 8099:8099 springboot-es6:v1.0 [root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker build -t springboot-es6 . 上面的配置:運行時命令為: [root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker run -d -p 8099:8099 springboot-es6
帶了v1.0生成的鏡像,跑錯了命令就是在這樣:
[root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker run -d -p 8099:8099 springboot-es6 e7a56662f804ef72e7dcae3fa71e840c35e28e18aa1aff7e98b71d900b17c305 [root@izwz99z5o9dc90keftqhlrz elasticsearch]#
上述內容就是springboot項目怎么在Linux+Docker環境中運行,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。