创建实例
更新时间:2024-09-25
描述
创建一个BCI容器实例。
请求参数
详见API创建实例
示例代码
如下代码可以创建一个BCI实例
Java
1public CreateInstanceResponse createInstance(BciClient bciClient) {
2 CreateInstanceRequest request = new CreateInstanceRequest();
3 // 设置实例名称
4 request.setName("test-instance-01");
5 // 设置可用区
6 request.setZoneName("zoneB");
7 // 设置安全组
8 request.setSecurityGroupIds(new ArrayList<String>()).getSecurityGroupIds().add("g-xxxx");
9 // 设置可用区
10 request.setSubnetIds(new ArrayList<String>()).getSubnetIds().add("sbn-xxxx");
11 // 设置实例重启策略
12 request.setRestartPolicy("Always");
13 // 设置弹性公网IP
14 request.setEipIp("xx.xx.xx.xx");
15 // 设置实例标签
16 request.setTags(new ArrayList<Tag>()).getTags().add(new Tag("tagkey", "tagvalue"))
17 // 设置镜像仓库凭证信息
18 request.setImageRegistryCredentials(new ArrayList<ImageRegistryCredential>()).getImageRegistryCredentials().add(new ImageRegistryCredential(
19 "docker.io/wywcoder", "username", "password"
20 ));
21
22 // 设置数据卷信息
23 Volume volume = new Volume()
24 volume.setNfs(xxx);
25 volume.setEmptyDir(xxx);
26 volume.setConfigFile(xxx);
27 request.setVolume(volume)
28
29 Container container = new Container();
30 // 设置容器名称
31 container.setName("container01");
32 // 设置容器镜像
33 container.setImage("registry.baidubce.com/bci-zjm-public/ubuntu:18.04");
34 // 设置内存大小
35 container.setMemory((float) 0.25);
36 // 设置cpu大小
37 container.setCpu((float) 0.25);
38 // 设置容器工作目录
39 container.setWorkingDir("/hoeme/work");
40 // 设置镜像拉取策略
41 container.setImagePullPolicy("Always");
42 // 设置容器启动命令
43 Collections.addAll(container.setCommands(new ArrayList<String>()).getCommands(), "/bin/sh", "-c", "sleep 36000 && exit 0");
44 // 设置容器内端口信息
45 container.setPorts(new ArrayList<Port>()).getPorts().add(new Port(80, "TCP", "myport"));
46 // 设置容器环境变量
47 container.setEnvironmentVars(new ArrayList<Environment>()).getEnvironmentVars().add(new Environment("envkey", "envvalue"));
48 // 设置业务容器组
49 request.setContainers(new ArrayList<Container>()).getContainers().add(container);
50
51 // 创建BCI实例
52 return bciClient.createInstance(request);
53}