```
_ _ __ _ _
| | | | / _(_) | |
__| | ___ _ __ | | ___ _ _| |_ _ ___| |__
/ _` |/ _ \ '_ \| |/ _ \| | | | _| / __| '_ \
| (_| | __/ |_) | | (_) | |_| | | | \__ \ | | |
\__,_|\___| .__/|_|\___/ \__, |_| |_|___/_| |_|
| | __/ |
|_| |___/
```
`deployfish` has commands for managing the whole lifecycle of your application:
* Safely and easily create, update, destroy and restart ECS services
* Extensive support for ECS related services like load balancing, application
autoscaling and service discovery
* Easily scale the number of containers in your service, optionally scaling its
associated autoscaling group at the same time
* Manage multiple environments for your service (test, qa, prod, etc.) in
multiple AWS accounts.
* Uses AWS Parameter Store for secrets for your containers
* View the configuration and status of running ECS services
* Run a one-off command related to your service
* Easily exec through your VPC bastion host into your running containers, or
ssh into a ECS container machine in your cluster.
* Setup SSH tunnels to the private AWS resources in VPC that your service
uses so that you can connect to them from your work machine.
* Extensible! Add additional functionality through custom deployfish modules.
* Works great in CodeBuild steps in a CodePipeline based CI/CD system!
Additionally, `deployfish` integrates with
[terraform](https://www.terraform.io) state files so that you can use the
values of terraform outputs directly in your `deployfish` configurations.
To use `deployfish`, you
* Install `deployfish`
* Define your service in `deployfish.yml`
* Use `deploy` to start managing your service
A simple `deployfish.yml` looks like this:
services:
- name: my-service
environment: prod
cluster: my-cluster
count: 2
load_balancer:
service_role_arn: arn:aws:iam::123142123547:role/ecsServiceRole
load_balancer_name: my-service-elb
container_name: my-service
container_port: 80
family: my-service
network_mode: bridge
task_role_arn: arn:aws:iam::123142123547:role/myTaskRole
containers:
- name: my-service
image: 123142123547.dkr.ecr.us-west-2.amazonaws.com/my-service:0.0.1
cpu: 128
memory: 256
memoryReservation: 128
ports:
- "80"
environment:
- ENVIRONMENT=prod
- ANOTHER_ENV_VAR=value
- THIRD_ENV_VAR=value
See the `examples/` folder in this repository for example `deployfish.yml`
files.
## Documentation
[deployfish.readthedocs.io](http://deployfish.readthedocs.io/) is the full
reference for deployfish, including a full `deployfish.yml` reference and
tutorials.
## Installing deployfish
deployfish is a pure python package. As such, it can be installed in the
usual python ways. For the following instructions, either install it into your
global python install, or use a python [virtual environment](https://python-guide-pt-br.readthedocs.io/en/latest/dev/virtualenvs/) to install it
without polluting your global python environment.
### Install via pip
pip install deployfish
### Install via `setup.py`
Download a release from [Github](https://github.com/caltechads/deployfish/releases), then:
unzip deployfish-0.22.1.zip
cd deployfish-0.22.1
python setup.py install
Or:
git clone https://github.com/caltechads/deployfish.git
cd deployfish
python setup.py install
### Using pyenv to install into a virtual environment (Recommended)
If you use python and frequently need to install additional python modules,
[pyenv](https://github.com/pyenv/pyenv) and [pyenv-virtualenv](https://github.com/pyenv/pyenv-virtualenv)
are extremely useful. They allow some very useful things:
* Manage your virtualenvs easily on a per-project basis
* Provide support for per-project Python versions.
To install `pyenv` and `pyenv-virtualenv` and set up your environment for the
first time
PyPI 官网下载 | deployfish-0.22.1.tar.gz
版权申诉
195 浏览量
2022-01-10
13:05:29
上传
评论
收藏 39KB GZ 举报
挣扎的蓝藻
- 粉丝: 13w+
- 资源: 15万+
最新资源
- 萤石云cp1-2c3wf
- 基于STM32的智能家庭火灾报警系统源码+演示ppt+演示视频(高分项目).zip
- 11. Django 常用的Web应用程序
- 萤石云固件CS-XP1-8B4WF
- HTML5小游戏【农场连连看-优秀H5小游戏合集】游戏源码分享下载 - farm.zip
- 基于Python的酒店评论情感分析源码+文档(高分项目).zip
- meta-llama-3-8b-instruct 的 model-00003-of-00004.safetensors 的3/3
- nginx配置文件,注意其中需要对应宿主机的路径
- 自用数据集自用数据集自用数据集
- HTML5小游戏【堆雪人-优秀H5小游戏合集】游戏源码分享下载 - epicsnowman.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈