thomas-tank-corp / score-compose

Reference implementation for docker-compose target platform support

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Score banner

Score Score overview

Score provides a developer-centric and platform-agnostic workload specification to improve developer productivity and experience. Score eliminates configuration inconsistencies between local and remote environments.

The Platform CLI is a conversion tool for application developers to generate an environment specific configuration. In combination with environment specific parameters, The Platform CLI tool can run your Workload in the target environment by generating the target platform's configuration file.

Installation Installation

Step 1. Download

  1. Open https://github.com/score-spec/score-compose/releases in your browser.

  2. Find the current release by scrolling down and looking for the green tag that reads Latest.

  3. Download the latest compressed Tar file for your operating system.

    1. The name will be something like score-compose_x.y_osx-amd64.tar.gz, where x.y is the release number, osx is the operating system.
    2. By default, the tarball will be saved to your ~/Downloads directory. If you choose to use a different location, you'll need to change that in the following steps.

Results You should see something similar to the following output.

Saving to: `score-compose_x.y_osx-amd64.tar.gz`

score-compose_x.y.0 100%[===================>]   2.85M  5.28MB/s    in 0.5s

Step 2: Install into your local directory

In your terminal, enter the following to create the score-spec directory.

cd /usr/local/
# create the directory if needed
sudo mkdir -pv score-spec

Extract the compressed Tar file.

sudo tar -xvzf ~/Downloads/score-compose_0.1.0_darwin_arm64.tar.gz

Results You should see the following output.

x LICENSE
x README.md
x score-compose

Step 3: Export PATH

To export PATH, run the following command.

export PATH=$PATH:/usr/local/score-spec

Step 4: Verify installation

To verify installation, run the following command.

score-compose --version

The previous command returns the following output.

score-compose x.y.z

Results You've successfully installed the Platform CLI.

Overview Overview

The Score specification file resolves configuration inconsistencies between environments. Compose a score.yaml file that describes how to run your Workload. As a platform-agnostic declaration file, score.yaml creates a single source of truth on Workload profiles and works to integrate with any platform or tooling.

Use the Platform CLI tool

# Generate compose.yaml with score-compose
score-compose run -f /tmp/score.yaml -o /tmp/compose.yaml

# Run the service with docker-compose
docker-compose -f /tmp/compose.yaml up backend

Manifesto Score manifesto

  • Enable local development without risk of configuration inconsistencies in remote environments.
  • Offer default configuration while allowing for a large degree of customization.
  • Establish a single source of truth for application configuration.
  • Separate environment specific from environment agnostic configuration.
  • Enable environment agnostic declaration of infrastructure dependencies.
  • Enable application centric rather than infrastructure centric development.
  • Abstract away infrastructural complexity without sacrificing transparency.

For more information, see the Score manifesto.

Get involved Get involved

Contributing Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also open an issue with the tag enhancement.

  1. Fork the Project.
  2. Create your Feature Branch. git checkout -b feature/feature-name
  3. Commit your Changes. git commit -s -m "Add some AmazingFeature"
  4. Push to the Branch. git push origin feature/feature-name
  5. Open a Pull Request.

Read CONTRIBUTING for more information.

License License

License

Code of conduct Code of conduct

Contributor Covenant

About

Reference implementation for docker-compose target platform support

License:Apache License 2.0


Languages

Language:Go 100.0%