mirror of
https://github.com/veggiemonk/awesome-docker.git
synced 2024-12-22 22:19:30 -05:00
parent
82d9ebe503
commit
cf38d3e8b5
9
.github/CONTRIBUTING.md
vendored
9
.github/CONTRIBUTING.md
vendored
@ -17,7 +17,7 @@ Please note that this project is released with a [Contributor Code of Conduct](h
|
|||||||
|
|
||||||
# Mission Statement
|
# Mission Statement
|
||||||
|
|
||||||
`awesome-docker` is a hand-crafted list for high-quality information about Docker and its resources. It should be related or compatible with Docker. If it's just an image built on top of Docker, the project possibly belongs to other [awesome lists](https://github.com/sindresorhus/awesome). You can check the [awesome-selfhosted list](https://github.com/Kickball/awesome-selfhosted) or the [awesome-sysadmin list](https://github.com/n1trux/awesome-sysadmin) as well.
|
`awesome-docker` is a hand-crafted list for high-quality information about Docker and its resources. It should be related or compatible with Docker or containers. If it's just an image built on top of Docker, the project possibly belongs to other [awesome lists](https://github.com/sindresorhus/awesome). You can check the [awesome-selfhosted list](https://github.com/Kickball/awesome-selfhosted) or the [awesome-sysadmin list](https://github.com/n1trux/awesome-sysadmin) as well.
|
||||||
If it's a **tutorial or a blog post**, they get outdated really quickly so we don't really put them on the list but if it is on a very advanced and/or specific topic, we will consider it!
|
If it's a **tutorial or a blog post**, they get outdated really quickly so we don't really put them on the list but if it is on a very advanced and/or specific topic, we will consider it!
|
||||||
If something is awesome, share it (pull request or [issue](https://github.com/veggiemonk/awesome-docker/issues/new) or [chat](https://gitter.im/veggiemonk/awesome-docker)), let us know why and we will help you!
|
If something is awesome, share it (pull request or [issue](https://github.com/veggiemonk/awesome-docker/issues/new) or [chat](https://gitter.im/veggiemonk/awesome-docker)), let us know why and we will help you!
|
||||||
|
|
||||||
@ -26,8 +26,9 @@ If something is awesome, share it (pull request or [issue](https://github.com/ve
|
|||||||
Note that we can help you achieve those standards, just try your best and be brave.
|
Note that we can help you achieve those standards, just try your best and be brave.
|
||||||
We'll guide you to the best of our abilities.
|
We'll guide you to the best of our abilities.
|
||||||
|
|
||||||
To be on the list, it would be *nice* if entries adhere to these quality standards:
|
To be on the list, it would be **nice** if entries adhere to these quality standards:
|
||||||
|
|
||||||
|
- It should take less than 20 sec to find what is the project, how to install it and how to use it.
|
||||||
- Generally useful to the community.
|
- Generally useful to the community.
|
||||||
- A project on GitHub with a well documented `README.md` file and plenty of examples is considered high quality.
|
- A project on GitHub with a well documented `README.md` file and plenty of examples is considered high quality.
|
||||||
- Clearly stating if an entry is related to (Linux) containers and not to Docker. There is an [awesome list](https://github.com/Friz-zy/awesome-linux-containers) for that.
|
- Clearly stating if an entry is related to (Linux) containers and not to Docker. There is an [awesome list](https://github.com/Friz-zy/awesome-linux-containers) for that.
|
||||||
@ -38,10 +39,9 @@ To be on the list, it would be *nice* if entries adhere to these quality standar
|
|||||||
|
|
||||||
To be on the list, the project **must** have:
|
To be on the list, the project **must** have:
|
||||||
|
|
||||||
- How to setup the project
|
- How to setup/install the project
|
||||||
- How to use the project (examples)
|
- How to use the project (examples)
|
||||||
|
|
||||||
|
|
||||||
If your PR is not merged, we will tell you why so that you may be able to improve it.
|
If your PR is not merged, we will tell you why so that you may be able to improve it.
|
||||||
But usually, we are pretty relaxed people, so just come and say hi, we'll figure something out together.
|
But usually, we are pretty relaxed people, so just come and say hi, we'll figure something out together.
|
||||||
|
|
||||||
@ -78,7 +78,6 @@ or you can
|
|||||||
|
|
||||||
Please contribute links to packages/projects you have used or are familiar with. This will help ensure high-quality entries.
|
Please contribute links to packages/projects you have used or are familiar with. This will help ensure high-quality entries.
|
||||||
|
|
||||||
|
|
||||||
#### Your commit message will be a [tweet](https://twitter.com/awesome_docker) so write a [good commit message](https://chris.beams.io/posts/git-commit/), keep that in mind :)
|
#### Your commit message will be a [tweet](https://twitter.com/awesome_docker) so write a [good commit message](https://chris.beams.io/posts/git-commit/), keep that in mind :)
|
||||||
|
|
||||||
# New Collaborators
|
# New Collaborators
|
||||||
|
14
.github/ISSUE_TEMPLATE/add-a-project.md
vendored
14
.github/ISSUE_TEMPLATE/add-a-project.md
vendored
@ -1,14 +0,0 @@
|
|||||||
---
|
|
||||||
name: Add a project
|
|
||||||
about: Add a link to the awesome docker list
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
Hi,
|
|
||||||
|
|
||||||
I would like to add a link. [Insert link here]
|
|
||||||
|
|
||||||
Or directly write it:
|
|
||||||
```markdown
|
|
||||||
[REPO](https://github.com/AUTHOR/REPO) - DESCRIPTION. By [@AUTHOR](https://github.com/AUTHOR)
|
|
||||||
```
|
|
50
.github/PULL_REQUEST_TEMPLATE.md
vendored
50
.github/PULL_REQUEST_TEMPLATE.md
vendored
@ -1,37 +1,39 @@
|
|||||||
|
|
||||||
<!-- Congrats on creating an Awesome Docker entry! 🎉 -->
|
<!-- Congrats on creating an Awesome Docker entry! 🎉 -->
|
||||||
|
|
||||||
|
# Quality Standards
|
||||||
|
|
||||||
<!-- Please fill in the below placeholders -->
|
Note that we can help you achieve those standards, just try your best and be brave.
|
||||||
|
We'll guide you to the best of our abilities.
|
||||||
|
|
||||||
**[Insert the URL to be listed]**
|
To be on the list, it would be **nice** if entries adhere to these quality standards:
|
||||||
|
|
||||||
**[Explain what the project is about and why it should be listed]**
|
- It should take less than 20 sec to find what is the project, how to install it and how to use it.
|
||||||
|
- Generally useful to the community.
|
||||||
|
- A project on GitHub with a well documented `README.md` file and plenty of examples is considered high quality.
|
||||||
|
- Clearly stating if an entry is related to (Linux) containers and not to Docker. There is an [awesome list](https://github.com/Friz-zy/awesome-linux-containers) for that.
|
||||||
|
- Clearly stating "what is it" i.e. which category it belongs to.
|
||||||
|
- Clearly stating "what is it for" i.e. mention a real problem it solves (even a small one). Make it clear for the next person.
|
||||||
|
- If it is a **WIP** (work in progress, not safe for production), please mention it. (Remember the time before Docker 1.0 ? ;-) )
|
||||||
|
- Always put the link to the GitHub project instead of the website!
|
||||||
|
|
||||||
|
To be on the list, the project **must** have:
|
||||||
|
|
||||||
# By submitting this pull request I confirm I've read and complied with the below requirements.
|
- How to setup/install the project
|
||||||
|
- How to use the project (examples)
|
||||||
|
|
||||||
**Please read it multiple times. I spent a lot of time on these guidelines and most people miss a lot.**
|
If your PR is not merged, we will tell you why so that you may be able to improve it.
|
||||||
|
But usually, we are pretty relaxed people, so just come and say hi, we'll figure something out together.
|
||||||
|
|
||||||
- I have read and understood the [contribution guidelines](https://github.com/veggiemonk/awesome-docker/blob/master/.github/CONTRIBUTING.md)
|
# Rules for Pull Request
|
||||||
|
|
||||||
- The project submitted conforms to the quality standards outlined in the [contribution guidelines](https://github.com/veggiemonk/awesome-docker/blob/master/.github/CONTRIBUTING.md)
|
- Each item should be limited to one link, no duplicates, no redirection (careful with `http` vs `https`!)
|
||||||
|
- The link should be the name of the package or project or website
|
||||||
|
- Description should be clear and concise (read it out loud to be sure)
|
||||||
|
- Description should follow the link, on the same line
|
||||||
|
- Entries are listed alphabetically, please respect the order
|
||||||
|
- If you want to add more than one link, please don't do all PR on the exact same line, it usually results in conflicts and your PR cannot be automatically merged...
|
||||||
|
|
||||||
- Go to the [contribution guidelines](https://github.com/veggiemonk/awesome-docker/blob/master/.github/CONTRIBUTING.md) and read it again.
|
Please contribute links to packages/projects you have used or are familiar with. This will help ensure high-quality entries.
|
||||||
|
|
||||||
|
#### Your commit message will be a [tweet](https://twitter.com/awesome_docker) so write a [good commit message](https://chris.beams.io/posts/git-commit/), keep that in mind :)
|
||||||
**RULES (because you probably didn't read the guidelines):**
|
|
||||||
|
|
||||||
Links will be tested with [awesome_bot](https://github.com/dkhamsing/awesome_bot). Please make sure your URL to be listed is unique (do some search queries), otherwise put a link at the end of `README.md` file.
|
|
||||||
|
|
||||||
- FORMAT
|
|
||||||
- Use the following format: `[Name](Link) - Description.`
|
|
||||||
- `[Name]` should be the title of the project
|
|
||||||
- `(Link)` should be pointing to a GitHub repository, not to a website
|
|
||||||
- `Description.` should end with a full stop/period
|
|
||||||
- For GitHub repositories, add the name of the author with a link to its GitHub account after the description, like `By [@author](GitHub account)`
|
|
||||||
- ORDER: The entries are in lexical order (English letter order)
|
|
||||||
- LABEL (Optional): Add one of the following icons next to the project name like ```[Name](Link) :icon: - Description.```
|
|
||||||
- :heavy_dollar_sign: indicates if one needs a paying subscription to use the project.
|
|
||||||
- :construction: indicates that the project is a work in progress/beta release.
|
|
||||||
- :skull: indicates that the project is obsolete, but still worth mentioning it.
|
|
33
.github/main.workflow
vendored
33
.github/main.workflow
vendored
@ -1,10 +1,18 @@
|
|||||||
workflow "New workflow" {
|
workflow "New workflow" {
|
||||||
on = "push"
|
on = "push"
|
||||||
resolves = ["Shell"]
|
resolves = ["push changes"]
|
||||||
|
}
|
||||||
|
|
||||||
|
action "skip-commit" {
|
||||||
|
uses = "veggiemonk/skip-commit@449e94fa83e7918c4079f37322205e17b868f993"
|
||||||
|
env = {
|
||||||
|
COMMIT_FILTER = "skip-ci"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
action "npm install" {
|
action "npm install" {
|
||||||
uses = "actions/npm@de7a3705a9510ee12702e124482fad6af249991b"
|
uses = "actions/npm@de7a3705a9510ee12702e124482fad6af249991b"
|
||||||
|
needs = ["skip-commit"]
|
||||||
args = "install"
|
args = "install"
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -14,14 +22,27 @@ action "npm run build" {
|
|||||||
args = "run build"
|
args = "run build"
|
||||||
}
|
}
|
||||||
|
|
||||||
action "Shell" {
|
action "Build metadata" {
|
||||||
uses = "veggiemonk/bin/git@master"
|
|
||||||
args = "TOKEN=$GITHUB_TOKEN node buildMetadata.js && ./push.sh"
|
|
||||||
needs = ["npm run build"]
|
needs = ["npm run build"]
|
||||||
|
uses = "actions/npm@master"
|
||||||
|
runs = "sh -l -c"
|
||||||
|
args = ["node buildMetadata.js"]
|
||||||
secrets = ["GITHUB_TOKEN"]
|
secrets = ["GITHUB_TOKEN"]
|
||||||
env = {
|
env = {
|
||||||
"GIT_EMAIL" = "alex.blaine@layder.io"
|
GIT_EMAIL = "alex.blaine@layder.io"
|
||||||
GIT_USERNAME = "veggiemonk"
|
GIT_USERNAME = "veggiemonk"
|
||||||
}
|
}
|
||||||
runs = "sh -c \"$@\""
|
}
|
||||||
|
|
||||||
|
action "push changes" {
|
||||||
|
uses = "veggiemonk/bin/git@master"
|
||||||
|
needs = ["Build metadata"]
|
||||||
|
runs = "sh -c $@"
|
||||||
|
args = "push.sh"
|
||||||
|
secrets = ["GITHUB_TOKEN"]
|
||||||
|
env = {
|
||||||
|
GIT_EMAIL = "alex.blaine@layder.io"
|
||||||
|
GIT_USERNAME = "veggiemonk-bot"
|
||||||
|
GIT_USER = "veggiemonk"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -21,4 +21,4 @@ before_script:
|
|||||||
|
|
||||||
script:
|
script:
|
||||||
- awesome_bot README.md --white-list edit/master,sindresorhus/awesome,www.udacity.com,screwdriver.cd,veggiemonk/awesome-docker,vimeo.com,cycle.io
|
- awesome_bot README.md --white-list edit/master,sindresorhus/awesome,www.udacity.com,screwdriver.cd,veggiemonk/awesome-docker,vimeo.com,cycle.io
|
||||||
- TOKEN=$GITHUB_TOKEN node buildMetadata.js && ./push.sh
|
- node buildMetadata.js && ./push.sh
|
||||||
|
@ -17,11 +17,13 @@ const handleFailure = err => {
|
|||||||
|
|
||||||
process.on('unhandledRejection', handleFailure);
|
process.on('unhandledRejection', handleFailure);
|
||||||
|
|
||||||
if (!process.env.TOKEN) {
|
if (!process.env.GITHUB_TOKEN) {
|
||||||
LOG.error('no credentials found.');
|
LOG.error('no credentials found.');
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const TOKEN = process.env.GITHUB_TOKEN
|
||||||
|
|
||||||
// --- ENV VAR ---
|
// --- ENV VAR ---
|
||||||
const BATCH_SIZE = parseInt(process.env.BATCH_SIZE, 10) || 10;
|
const BATCH_SIZE = parseInt(process.env.BATCH_SIZE, 10) || 10;
|
||||||
const DELAY = parseInt(process.env.DELAY, 10) || 3000;
|
const DELAY = parseInt(process.env.DELAY, 10) || 3000;
|
||||||
@ -35,6 +37,7 @@ const DATE = dayjs().format('YYYY-MM-DDTHH.mm.ss');
|
|||||||
const GITHUB_METADATA_FILE = `${DATA_FOLDER}/${DATE}-fetched_repo_data.json`;
|
const GITHUB_METADATA_FILE = `${DATA_FOLDER}/${DATE}-fetched_repo_data.json`;
|
||||||
const LATEST_FILENAME = `${DATA_FOLDER}/latest`;
|
const LATEST_FILENAME = `${DATA_FOLDER}/latest`;
|
||||||
const GITHUB_REPOS = `${DATA_FOLDER}/repository.json`;
|
const GITHUB_REPOS = `${DATA_FOLDER}/repository.json`;
|
||||||
|
const Authorization = `token ${TOKEN}`
|
||||||
|
|
||||||
// --- HTTP ---
|
// --- HTTP ---
|
||||||
const API = 'https://api.github.com/';
|
const API = 'https://api.github.com/';
|
||||||
@ -43,7 +46,7 @@ const options = {
|
|||||||
headers: {
|
headers: {
|
||||||
'User-Agent': 'awesome-docker script listing',
|
'User-Agent': 'awesome-docker script listing',
|
||||||
'Content-Type': 'application/json',
|
'Content-Type': 'application/json',
|
||||||
Authorization: `token ${process.env.TOKEN}`,
|
Authorization,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
8
push.sh
8
push.sh
@ -4,8 +4,8 @@
|
|||||||
set -e
|
set -e
|
||||||
|
|
||||||
# Set git credentials
|
# Set git credentials
|
||||||
git config --global user.email "info@veggiemonk.ovh"
|
git config --global user.email "$GIT_EMAIL"
|
||||||
git config --global user.name "veggiemonk-bot"
|
git config --global user.name "$GIT_USERNAME"
|
||||||
|
|
||||||
# let git know where to apply the changes
|
# let git know where to apply the changes
|
||||||
git checkout master
|
git checkout master
|
||||||
@ -18,9 +18,9 @@ files=$(git diff --cached --numstat | wc -l | tr -d '[:space:]');
|
|||||||
[[ $files -eq 0 ]] && echo "nothing to push, exiting..." && exit
|
[[ $files -eq 0 ]] && echo "nothing to push, exiting..." && exit
|
||||||
|
|
||||||
echo "Commiting files"
|
echo "Commiting files"
|
||||||
git commit -m "Automated update repository metadata [skip ci]"
|
git commit -m "Automated update repository metadata [skip-ci]"
|
||||||
|
|
||||||
echo "Pushing changes"
|
echo "Pushing changes"
|
||||||
git push https://$GITHUB_USER:$GITHUB_TOKEN@github.com/veggiemonk/awesome-docker master >/dev/null 2>&1
|
git push https://"$GIT_USER:$GITHUB_TOKEN"@github.com/veggiemonk/awesome-docker master >/dev/null 2>&1
|
||||||
|
|
||||||
echo "Done."
|
echo "Done."
|
||||||
|
Loading…
Reference in New Issue
Block a user