创建演示组织
该文档用于快速创建一个演示组织及其基础配置,创建完成后可以在演示组织中快速创建环境进行体验。
以下操作均在 cloudiac 部署目录 /usr/yunji/cloudiac
下执行。
1. 准备 SSH 密钥对
创建演示组织需要为其添加 SSH 密钥己便执行 playbook。
您可以使用己创建的 SSH 密钥或者生成一个新的密钥,并将私钥保存为 "var/private_key"
2. 创建演示组织配置文件:
创建文件 demo-conf.yml
,该文件用于定义演示组织需要进行的配置,具体内容及配置说明如下:
organization:
name: 演示组织
description: 这是一个演示组织
project:
name: 演示项目
description: 这是一个演示项目
# SSH 私钥文件路径(该私钥会被添加为云商 SSH 密钥对,并绑定到创建的计算资源)
key:
name: 演示密钥
key_file: ./var/private_key
# 为组织添加变量
variables:
# 云商认证密钥可以通过环境变量传入,以下示例为添加 aliyun 的 API 密钥
- name: ALICLOUD_ACCESS_KEY
type: environment # 变量类型为 environment(即环境变量)
value: xxxxxxxxxx
description: 阿里云访问密钥ID
sensitive: false
- name: ALICLOUD_SECRET_KEY
type: environment
value: xxxxxxxxxx
description: 阿里云访问密钥
sensitive: true # 是否为敏感变量(敏感变量会加密保存,且前端不展示)
template:
name: 演示云模板
description: 这是一个内置的示例模板,该模板在 aliyun 上创建一台 ec2,
绑定公网 IP 并安装 nginx 服务,
部署后可直接通过 outputs 中的 ip 访问
repo_id: /cloudiac/cloudiac-example.git
revision: master
tf_vars_file: qa-env.tfvars
playbook: ansible/playbook.yml
workdir:
3. 将文件挂载到容器
该步骤只在使用容器化部署时需要执行
修改 docker-compose.yml, 为 service iac-portal 追加 volumes:
#services:
# iac-portal:
# container_name: iac-portal
# image: "cloudiac/iac-portal:latest"
# volumes:
# - type: bind
# source: /usr/yunji/cloudiac/var
# target: /usr/yunji/cloudiac/var
# - type: bind
# source: /usr/yunji/cloudiac/.env
# target: /usr/yunji/cloudiac/.env
# 以下为追加内容
- type: bind
source: /usr/yunji/cloudiac/var/private_key
target: /usr/yunji/cloudiac/var/private_key
- type: bind
source: /usr/yunji/cloudiac/demo-conf.yml
target: /usr/yunji/cloudiac/demo-conf.yml
# ...
修改完成后执行以下命令,重启 iac-portal 使配置生效:
docker-compose up -d iac-portal --force-recreate
4. 生成演示组织
使用 iac-tool
自动创建演示组织。
如果您是容器化部署的环境,则执行以下命令:
docker-compose exec iac-portal ./iac-tool init-demo demo-conf.yml
如果您是手动部署的环境,则执行以下命令:
./iac-tool init-demo demo-conf.yml
⚠️注意,演示组织只能创建一次,如需重新初始化,需手动删除相关数据
5. 重启 iac-portal 服务
容器化部署的环境执行以下命令:
docker-compose restart iac-portal
手动部署的环境执行以下命令:
systemctl restart iac-portal
至此演示组织创建完成,登录系统创建环境进行体验吧。