Docker 是一个旨在帮助开发者构建、分享和运行容器应用程序的平台。我们负责处理繁琐的设置工作,让您能够专注于代码。
- 一个预先定义好的模板文件
- Docker引擎可以按照这个模板文件启动无数个一模一样,互不干扰的容器
容器就是一台独立的虚拟机,拥有网络,进程,文件系统等资源,默认和宿主机不发生任何交互
1
|
sudo docker pull centos:7 # 拉取centos7镜像
|
1
|
sudo docker rmi 442fd76b9077 # 删除id为442fd76b9077的镜像
|
1
2
|
sudo docker ps # 查看运行中的容器
sudo docker ps -a # 查看所有容器
|
1
|
sudo docker rm centos7 # 删除名称为centos7的容器
|
1
|
sudo docker start centos7
|
1
|
sudo docker stop centos7
|
- --rm
退出重启后删除该容器
- --name NAME
为容器指定一个名字
- -v 本地文件:容器文件
映射文件到容器
- -p 本地端口:容器端口
映射端口
- -e NAME=VALUE
设置容器内的环境变量
- -it
交互模式下运行
- -d
daemon模式下运行
1
|
sudo docker run --rm -it --name centos7 -v /home/w/my.codes:/root/my.codes my/centos7
|
不推荐生产环境使用这种方式,有诸多的不方便
- 需要Maven
- 需要源代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<id>package</id>
<phase>package</phase>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<executable>java</executable>
<arguments>
<argument>-classpath</argument>
<classpath/>
<argument>com.github.wjinlei.Main</argument>
</arguments>
</configuration>
</plugin>
|
使用方法
- 挂载到package阶段后
mvn package
- 或者直接用
mvn exec:exec
- Springboot项目可以通过
mav package
生成可启动的jar
包
- jar包可通过
java -jar xxxxx.jar
命令启动