#docker-compose #deployment #operations #ops #dex #experience #ssh

app opday

简化部署和其他运维操作的 Dex(Ops) 体验

1 个不稳定版本

0.1.0 2024 年 3 月 30 日

开发工具 中排名 567

MIT 许可协议

40KB
930

opday (不稳定,可能无法正常工作,请自行承担风险)

Build and test

简化部署和其他运维操作的 Dex(Ops) 体验。

为默认的 nginx 设置 docker compose

cat > docker-compose.yaml << EOL
version: "3.7"
services:
  nginx:
    image: nginx:latest
    ports:
    - "80:80"
EOL

现在让我们调用构建

opday docker build

此工具需要在本地上安装其他工具,并在 shell 中可用: dockersshrsync

理念

此工具优先考虑简单性和强制性,而不是扩展性和装饰性。它提供了一种简单而灵活的方法来维护基本的运维操作,并自动化其自身的基础设施。我们可能需要手动编写大量的 deploy.sh 脚本或像 umputun/spotKamal 或 Ansible 这样的工具。使用其中一些可能是过度设计,但我也希望不要强迫人们学习另一个 DSL 来处理显然的部署任务。因此,主要功能基于 dockerdocker compose

  • 在虚拟专用服务器和专用服务器上的资源分配
  • 支持多个提供商(docker、数据库、监控、S3 和其他存储)
  • 反向代理配置
  • 使用指标和警报进行监控
  • 日志收集工具
  • 备份和检查备份基础设施
  • 密钥管理
  • 支持现有 API
  • 迁移工具到 lambdas 或 Kubernetes

此工具的应用范围

  • 产品不适合 Kubernetes。对于单体或堡垒式应用程序,Kubernetes 带来的复杂性可能大于解决早期阶段问题的复杂性。
  • 服务少于 100 个虚拟机。更多的主机可能成为简单推送架构的问题。
  • 每天最多 100 个版本
  • 具有简单分片和复制的基础设施,适用于存储和数据库。以上所有内容可能更适合定制或云管理的服务。

用户指南

开始使用

准备主机

对于Ubuntu Docker,请按照以下步骤操作:https://docs.docker.net.cn/engine/install/ubuntu/

开发

我们使用pre-commit

pre-commit install
pre-commit

代码检查器和工具

rustup component add clippy
cargo binstall cargo-watch

随机笔记

# I have some questions to global rust and git hooks work together.
# So we link cargo to repository root to have the same code running
# with `make`, CI and git hooks.
ln -s `which cargo`

# Support RUST_LOG environment
RUST_LOG=debug cargo run

# Run tests with watch on change
make testw

思维上下文历史 [只读]:https://miro.com/app/board/uXjVN3A6wi4=/

依赖项

~4–5.5MB
~104K SLoC