flisk 导入
导入 repo 根中的服务 docker-compose.yml 输入 颜色 作为 service.json 文件,或登记 repo 自己的 Tilt 文件 flisk up 运行它。 这是Flisk-sh/flisk#511的编译第一级.
flisk import . --dry-run # plan only
flisk import . # plan, then ask before writing
flisk import . --yes # write service.json files and project setup
还有什么期待
- 读取一个项目 : 词根
docker-compose.yml,或compose.yaml, (中文(简体) ),compose.yml或者说docker-compose.yaml当没有时,通过docker compose config --no-interpolate --no-env-resolution --no-path-resolution当涂鸦作曲安装时, 所以include:, (中文(简体) ),extends和锚作为docker compose up解析它们( wger 保留 db, 缓存和权力同步 )services/*.yaml, (中文(简体) ),${VAR}模板保留为已写入, 而包含的文件路径会相对于它自己的文件夹保留 。 无打工者作曲(或FLISK_IMPORT_DOCKER=0文件被读作YAML, 计划说当它离开include或者说extends未解决。 不覆盖文件, Dockerfiles 自己,package.json,或Procfiles. (原始内容存档于2019-09-31). - 写作: 一个带 - 你自己的
service.json每个编曲服务,加.flisk/project.json如果还不是Flisk项目。 它从不编辑 Compose 文件或覆盖 aservice.json无--force。 。 。 . - 保存安装数据 : 每个名称的音量得到
name,多克音量docker compose up创建( e)<project>_<volume>本身name:,或一个external),因此flisk up挂载相同的数据, 没有副本( 需要 Flisk # 2964 的 Flisk 发布) . - 保留 :
profiles(服务开始于flisk up --profile, (中文(简体) ),env_file作为envFile, (中文(简体) ),tmpfs财务报告和审定财务报表deploy.resources.limits(单位:千美元)container.tmpfs, (中文(简体) ),cpus, (中文(简体) ),memory) (中文(简体) ). - 保留(Flisk 1.4.28): 每个
depends_on作为条件{ name, condition }条目(列表表为service_started, (中文(简体) ),build.args作为buildArgs, (中文(简体) ),logging(选项作为字符串),从环境中绑定路径(${OM_AGENTS_DIR:-./agents},相对于service.json), SELinux 标签(:z, (中文(简体) ),:Z, (中文(简体) ),bind.selinux,作为selinux和图像${NAME:?message}。来自变量的绑定路径没有默认值(${STORAGE_DIR}/redis和extra_hosts有变量的,仍然没有结转. - 保留 :
stop_grace_period(单位:千美元)container.stopGracePeriod,例如30s页:1aliases每个网络(container.networkAliases, (中文(简体) ),extra_hosts在列表或映射格式中 (container.extraHosts,例如host.docker.internal:host-gateway和ulimits(单位:千美元)container.ulimits) (中文(简体) ). 重新命名为 kebab 的服务( Q)lychee_api变成lychee-api)保留其编曲名称作为网络别名,因此http://lychee_api:8000在另一个服务仍然解决.container_name缩写为:Flisk名容器本身。 这些字段,带有变量和on-failure:N需要读取它们的Flisk核心发布;一个更古老的核心不应用它们. - 保留 : 服务名称( e)
db留下来db,因此它保留了主机名,构建上下文和多克文件(或图像),所写的集装箱端口(3000,80,5432),depends_on和HTTP健康路径。 数据库和经纪人是私人的,没有代理路线. - 运行时键 : 已命名的卷并装入项目内(
volumes, (中文(简体) ),cap_add, (中文(简体) ),cap_drop, (中文(简体) ),init, (中文(简体) ),read_only, (中文(简体) ),user, (中文(简体) ),security_opt财务报告和审定财务报表shm_size(单位:千美元)container),额外的已公布端口(extraPorts,在与Confose相同的主机地址上:"80:80"保留在每个界面上(写入为publish: "80",所以IPv6被保存;"0.0.0.0:80:80"实值bind, (中文(简体) ),"127.0.0.1:5432:5432"和另一个地址或一个地址${VAR:-default}或者说${VAR-default}主机侧为publish, (中文(简体) ),network_mode: service:<name>(单位:千美元)sidecarOf和restart。 。 。 . - 环境: 承诺
service.jsonenv得到每个纯的 编曲表达式的书面, 不管它的名称(${DB_PASSWORD:-password}, (中文(简体) ),${PORT-8080}, (中文(简体) ),${A:-${B:-file}}),所以一个新鲜的克隆保留了默认,并且每个字都保留了sqlite, (中文(简体) ),worker, (中文(简体) ),lychee_db, (中文(简体) ),http://invidious:3000除非它的名字看起来像一个证书(PASSWORD, (中文(简体) ),TOKEN, (中文(简体) ),KEY,.)或值持有一个(一个有用户或密码的URL,一个符号查询参数,一个长随机字符串,一个PEM块). 进去吧secrets.required,其字面价值已复制到工程中.env,该词添加到.gitignore。数值.env已经保存. - 来回旅行: 一个路由端口, 编译器也发布( O) :
"${APP_PORT:-8000}:8000"继续留在extraPorts还有,一个healthcheck保留为healthCheck.command(与interval, (中文(简体) ),timeout, (中文(简体) ),retries财务报告和审定财务报表start_period作为startPeriod即使读取了 HTTP 路径,所以flisk-export compose写一个文件docker compose以同样的方式开始(LycheeOrg/Lychee圆路,除了名字和别名没有区别)。 无服务restart没有保留, 因此 Flisk 用默认操作它unless-stopped(与"作曲"不同,"Flisk"在坠机后或重启后再重启;计划如此规定).restart: "no"仅当 Compose 设定此选项或其它服务等待此选项时才会写入condition: service_completed_successfully,因为 Flisk 运行一个restart: "no"作为一发一发服务 等待它离开,healthcheck: { disable: true }或者说test: ["NONE"]变成healthCheck: false,该值混合${VAR}带有文字文字的文字(${SERVER_NAME:-localhost}, php:80继续留在env除非它能持有证书,*_FILE路径( e)POSTGRES_PASSWORD_FILE=/run/secrets/pg留下来env,和“编译”项目名称(name:或文件夹的,例如pl_mail)记录为:composeProjectNames.<stack>内.flisk/project.json这样flisk-export compose保留容器名称. - 跟踪
.env数字 : 实施其.env(音同)保持原样,没有加入.gitignore; 必须留在本地的值将转到.env.local当git已经忽略它, 否则.flisk/.env.import(加进.gitignore),每个需要他们的服务读取该文件为envFile。 。 。 . - 保留 : (单位:千美元)
command或者说entrypoint作为container.command编号 :container.entrypoint(Flisk 1.4.31;按原样排列的列表,一串被分割成exec-form参数作为Compose将其分割,没有外壳,所以command: server /export打开minio/minio保留其论据ENTRYPOINT· ;$$财务报告和审定财务报表${VAR}被写入原样, 因为 Flisk 把它们重新放入 Compose 文件 ; 只有带有不平衡引文的字符串sh -c,计划是这样说的;空辩被弗利斯克拒绝,没有写作;对于服务于build:页:1healthcheck作为healthCheck.command,一个已公布的数据库端口为extraPorts,以及restart: on-failure:N带有重试限制(N从1到100). - 滴出,并说:
command在服务与build, (中文(简体) ),env_file以及所有其他未经翻译的钥匙;项目以外的匿名卷和路径;network_mode其他service:<name>; 配置名称无效的服务,extends,树外建筑,或带有字符或可变形式的图像${NAME}, (中文(简体) ),${NAME:-default}财务报告和审定财务报表${NAME-default}(单位:千美元)postgres:${POSTGRES_VERSION:-18}-alpine被写成. - 别乱动. 运行
flisk up带有 Flisk 核心 1.4.31 或以后时间 (单位:千美元)container.entrypoint需要; 取决于条件、 构建参数、 日志、 来自环境的绑定路径、 SELinux 标签和${NAME:?message}图像需要1.4.28。 进口商不检查核心版本 . - 退出代码 :
0当计划成功时(--dry-run,写入文件,或全部service.json文件已经存在),1无根时docker-compose.yml或可映射服务,以及2当写出提示被拒绝或关闭而无答案时(Nothing written.) (中文(简体) ).
见 文件/进口 完全的绘图和限制. flisk import 是本软件包支持的核心 CLI 命令.
导入倾斜文件
已经运行在 Tilt 上的 Repo 保留自己的 Tilt 文件 . flisk-import tiltfile 登记在 .flisk/project.json这样 flisk up 运行它不变.
flisk import tiltfile --dry-run # plan only
flisk import tiltfile # plan, then ask before writing
flisk import tiltfile dev/Tiltfile --yes # a named file, or a folder that holds a Tiltfile
- 路径 :
[path]默认为Tiltfile; 文件夹表示<folder>/Tiltfile。从当前目录中解决。 工程根是最近的文件夹.flisk/project.json,否则就是当前目录. - 写作: 仅限
.flisk/project.json,与"orchestration": { "source": "tiltfile", "path": "<path from the project root>" }。所有其他键都保留。 没有project.json,它创建与 Confose 导入相同的最小值,只有代理堆栈。 它从不编辑 Tilt 文件 . - 拒绝(退出1): 缺少 Tilt 文件, 内部路径
.flisk/(也通过符号链接),带有引文或控制字符的路径,aproject.json这不是 JSON 对象或缺少字段flisk up需求,aproject.json已经设置orchestration(通过)--force以取代它). - 退出代码 : 与“编译”导入相同:
0页:1--dry-run或者写作,1对于拒绝,2当提示被拒绝或关闭时(Nothing written.) (中文(简体) ). - 需求 运行导入的倾斜文件的 Flisk 核心( )flisk# 2849 (英语)) (中文(简体) ). 进口商不检查核心版本 .
平面 flisk-import [dir] 仍然是“编译”的导入。 要从命名的文件夹中导入编曲 tiltfile,写入 flisk-import ./tiltfile。 。 。 .
bun install && bun run build && bun run test
出版
flisk-import 由工作流程发布至 npmjs.org
.github/workflows/publish-npm.yml,由
GitHub发布. 用这个 npm 信任的出版 (OIDC),所以没有长寿的npm符号
住在这个仓库里 软件包以两个名称发布:未瞄准镜
flisk-import 范围 @flisk-sh/flisk-import (名称相同的档案)
重写在包装的货单上.
一次性所有者设置
在第一个OIDC出版成功之前,信任的出版商必须在npm上存在,而且它是 每个软件包名称配置 :
- 在 npmjs.com 上打开软件包 设置 → 信任的出版商 → GitHub 动作
- 填写:
- 组织:
flisk-sh - 仓库 :
flisk-import - 工作流程文件名 :
publish-npm.yml - 允许的行动 :
npm publish
- 组织:
- 重复为
@flisk-sh/flisk-import一旦该软件包存在
命令行的相同内容, 对于任一名称:
npm trust github flisk-import --file publish-npm.yml --repo flisk-sh/flisk-import --allow-publish
npm trust list flisk-import
第一个版本
软件包的第一个版本无法通过 OIDC 发布 —— npm 没有可信赖的出版商 对于一个尚未存在的名称。 因此,0.2.2版本出版一次,其中a 符号; 之后的每个版本都从发布工作流程中发布 OIDC .