Ubuntu is a Debian-based Linux operating system that runs from the desktop to the cloud, to all your internet connected things. It is the world's most popular operating system across public clouds and OpenStack clouds. It is the number one platform for containers; from Docker to Kubernetes to LXD, Ubuntu can run your containers at scale. Fast, secure and simple, Ubuntu powers millions of PCs worldwide.
Learn more about Ubuntu: https://ubuntu.com/
This Docker container makes it easy to get an instance of SSHD up and running with Ubuntu.
Based on Official Ubuntu Docker Image with some minor hack:
- Packaging by Packer Docker builder and Ansible provisioner in single layer
- Handle
ENTRYPOINT
with catatonit - Handle
CMD
with SSHD
Start SSHD:
# Pull latest image
docker pull alvistack/devel-24.04
# Run as detach
docker run \
-itd \
--name devel \
--publish 2222:22 \
alvistack/devel-24.04
Success. SSHD is now available on port 2222
.
Because this container DIDN'T handle the generation of root
password, so you should set it up manually with pwgen
by:
# Generate password with pwgen
PASSWORD=$(docker exec -i devel pwgen -cnyB1); echo $PASSWORD
# Inject the generated password
echo "root:$PASSWORD" | docker exec -i devel chpasswd
Alternatively, you could inject your own SSH public key into container's authorized_keys by:
# Inject your own SSH public key
(docker exec -i devel sh -c "cat >> /root/.ssh/authorized_keys") < ~/.ssh/id_rsa.pub
Now you could SSH to it as normal:
ssh root@localhost -p 2222
Release tags could be find from GitHub Release of this repository. Thus using these tags will ensure you are running the most up to date stable version of this image.
Version tags ended with .0.0
are rolling release rebuild by GitLab
pipeline in
weekly basis. Thus using these tags will ensure you are running the
latest packages provided by the base image project.
- Code released under Apache License 2.0
- Docs released under CC BY 4.0
- Wong Hoi Sing Edison