docker: Lbrynet as a container #149
No reviewers
Labels
No labels
area: devops
area: discovery
area: docs
area: livestream
area: proposal
consider soon
Epic
good first issue
hacktoberfest
hard fork
help wanted
icebox
Invalid
level: 0
level: 1
level: 2
level: 3
level: 4
needs: exploration
needs: grooming
needs: priority
needs: repro
needs: tech design
on hold
priority: blocker
priority: high
priority: low
priority: medium
resilience
soft fork
Tom's Wishlist
type: bug
type: discussion
type: improvement
type: new feature
type: refactor
type: task
type: testing
unplanned
work in progress
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: LBRYCommunity/lbrycrd#149
Loading…
Reference in a new issue
No description provided.
Delete branch "lbry-as-a-container"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Documentation
Added some basic documentation to docker/README.md it can be used elsewhere but at some point if we add other things which end up justifying that the end user run a
git clone
and thendocker-compose up -d
from inside of the git repo of lbrycrd we can let them store data in docker/data/ with some fancy git ignoring.Docker Compose
For the sake of getting people launched asap I've included a basic docker-compose.yml file which can launch the app with
docker-compose up -d
then commands can be run usingdocker exec CONTAINERNAME lbrynet-cli commands
.gitlab-ci.yml
This is for CI/CD prebuild and deploy if we want to use GitLab for building these containers rather than the hub.docker.com route. Currently, this is just configured to show what it would look like with my repositories.
Dockerfile
Currently, the dockerfile is very basic and just installs the daemon into the containers $PATH for easy execution then it stores the daemons content in /app/ as that is defined as the unprivileged daemon processes home directory.
Commit size
https://en.wikipedia.org/wiki/Atomic_commit#Atomic_commit_convention the version I was working from in my topic branch was hugely out of date so rather than carrying over all of the commits I just added everything fresh I know that it's lazy but this code doesn't meddle with anyone's stuff so it seemed like it should be okay to do it this way.
Maintainance
This container should be reasonably future proof for now as I've defined all non-ephemeral blobs to reside in the /app/ directory inside of the container which can be updated at a later time just fine.
The configuration will be added using a shell script in the future which can be optionally included. The goal is to allow configuration using environment variables in the docker-compose.yml file which will be the officially supported launch method as it's the least maintenance method.
Ignore this I added these files to the wrong repo for the PR. I've got an annoying setup so that I can do CI/CD with GitLab as I don't have access to any of the LBRY testing mechanisms like Travis.
Pull request closed