unbuntu安裝Docker及部署微服務

1.ubuntu上安裝docker

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

2. 開啓docekr監聽2375端口,實現鏡像遠程添加

 vim /lib/systemd/system/docker.service 

在[Service]部分的最下面添加下面兩行:

ExecStart=
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

重啓docker服務:

systemctl daemon-reload
systemctl restart docker

3.  spring-boot項目 pom文件配置

<properties>
   <docker.image.prefix>springboot</docker.image.prefix>
</properties>
<build>
   <plugins>
      <!-- Docker maven plugin -->
      <plugin>
         <groupId>com.spotify</groupId>
         <artifactId>docker-maven-plugin</artifactId>
         <version>0.4.13</version>
         <configuration>
            <dockerHost>http://192.168.10.222:2375</dockerHost>
            <imageName>${docker.image.prefix}/${project.artifactId}</imageName>
            <dockerDirectory>src/main/docker</dockerDirectory>
            <resources>
               <resource>
                  <targetPath>/</targetPath>
                  <directory>${project.build.directory}</directory>
                  <include>${project.build.finalName}.jar</include>
               </resource>
            </resources>
         </configuration>
      </plugin>
   </plugins>
</build>

4.main目錄下創建個docker文件夾,創建個Dockerfile文件

FROM java:8
VOLUME /tmp
ADD iot-eureka-0.0.1-SNAPSHOT.jar app.jar
EXPOSE 8888
CMD java -jar app.jar

 

5. idea啓動配置項裏添加一個maven項,command line裏寫:

package docker:build

 

6. 在unbuntu里加載鏡像啓動容器

docker run -d -p 10035:8888 springboot/iot-eureka

  • -d:讓容器在後臺運行。

  • -P :是容器內部端口隨機映射到主機的端口。
  • -p : 是容器內部端口綁定到指定的主機端口。

10035:8888就是將容器的8888端口映射到主機的10035端口上,這樣在主機上訪問10035端口就相當於訪問容器的8888端口

7.docker命令

#移除版本爲5.7的allen_mysql
docker rmi allen_mysql:5.7

#移除id爲123456的鏡像
docker rmi 123456

#移除容器
docker rm idOrName

#查看正在運行的容器
docker ps
#查看所有容器
docker ps -a

#查看鏡像/所有鏡像
docker images 
docker images-a
#啓動容器
docker start idOrName
#停止容器
docker stop idOrName
docker kill idOrName
#進入容器命令行
docker exec -it name bash
sudo docker exec --help 最好查看下具體說明比較好

 

8. 容器與鏡像的關係

想要移除鏡像,就要首先移除運行在鏡像上的容器

  • Images( Docker鏡像)

Docker鏡像是一個只讀模板,它包含創建 Docker容器的說明。它和系統安裝光盤有點像,使用系統安裝光盤可以安裝系統,同理,使用Docker鏡像可以運行 Docker鏡像中的程序。

  • Container(容器)

容器是鏡像的可運行實例。鏡像和容器的關係有點類似於面向對象中,類和對象的關係。可通過 Docker API或者 CLI命令來啓停、移動、刪除容器。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章