...
Docker is a tool for creating, running, and managing lightweight virtual machines. These virtual machines make it possible to distribute executable environments with all of the dependencies that can easily be run by others. These Docker images can then be stored and distributed on a Docker Registry, a collection of these images. There are a number of open registries on the web, and Synapse hosts a private registry, freely available to our users, which will allow users to create software on a per project basis that can be easily shared across Synapse. Learn more about Docker and Docker Registry.
Registered Synapse users interact with the Synapse Docker registry using the standard Docker client. If you have not yet created a Synapse account, you must register for Synapse before you can use Docker.
In Synapse, Docker containers are represented as versioned ‘repositories’ under the Docker tab. As with files and tables, repositories are organized by project and inherit the access permissions from the parent project. Local sharing settings can be applied directly to the repository if permissions should differ from the project.
Read more about local sharing settings in the Sharing settings and permissions article /wiki/spaces/DOCS/pages/2024276030.
To learn more about working with Docker using one of our programmatic clients, including code examples for the below tasks, see:
Docker in Python Docs
Docker in R Docs
Creating a
...
New Docker
...
Image
To create a custom Docker image, you can choose to either modify an existing Docker image or build a Docker image from a Dockerfile. Docker images must be tagged with docker.synapse.org/synapseProjectId/myreponame
to allow images to be saved.
...
Learn more about building Docker images.
Storing Docker
...
Images in the Synapse Docker
...
Registry
To store Docker images, use the docker push
command. To push to the Synapse Docker registry, users must be logged into the registry, be a Synapse certified user and have edit permissions:
...
Code Block |
---|
docker login -u <anything> -p <access token> docker.synapse.org |
Using Docker
...
Images Stored in the Synapse Docker
...
Registry
To access the Docker images stored in Synapse, use the docker pull
command. To pull from the Synapse Docker registry, users must be logged into the registry and have download permissions:
...
To pull a container from a Synapse Docker repository, you must have download permissions in the sharing settings of the Synapse Docker repository. In Synapse, Docker repositories have names of the form: docker.synapse.org/syn12345678/repo-name, where syn12345678 is the project ID. Navigate to syn12345678 to check the project’s sharing settings. To push a new container to a Synapse Docker repository, you must be a Synapse certified user and have edit permissions. To push a change to an existing Synapse Docker repository, you must also have edit permissions. If the container is in the trash can, all operations will fail. Include Page