docker-java 创建容器时,绑定工作目录,添加环境变量,映射文件夹路径,并且映射端口
时间: 2024-11-06 12:18:11 浏览: 29
Docker-Java库是一个用于操作Docker的Java API客户端,它可以帮助你在Java应用程序中方便地创建、管理和控制Docker容器。当你使用这个库创建容器时,可以按照以下步骤设置相应的属性:
1. **绑定工作目录** (Working Directory):
使用`DockerClient`的`createContainer()`方法时,你可以指定`HostConfig`里的`workingDir`参数来设定容器启动时的工作目录,例如:
```java
HostConfig hostConfig = HostConfig.builder()
.workdir("/path/to/container/workdir")
.build();
ContainerConfig containerConfig = ContainerConfig.builder()
.build();
DockerContainer container = client.createContainer(containerConfig, "your-image", hostConfig);
```
2. **添加环境变量** (Environment Variables):
同样在`HostConfig`中,你可以通过`addEnvironment()`方法添加环境变量,如:
```java
Map<String, String> environment = new HashMap<>();
environment.put("VAR_NAME", "VAR_VALUE");
hostConfig.withEnv(environment);
```
3. **映射文件夹路径** (Volume Mounting):
要将主机的文件夹挂载到容器,可以使用`bindMount`方法,如:
```java
Volume volume = Volume.fromPath("/host/path/to/mount", "/container/path/in/docker");
hostConfig.withBinds(volume);
```
4. **映射端口** (Port Mapping):
利用`PortBinding`对象设置端口映射,比如:
```java
PortBinding portBinding = PortBinding.parse("8080:80");
hostConfig.withPortBindings(portBinding);
```
创建好容器后,记得调用`client.startContainer(container.getId())`来启动它。
阅读全文