The longtea is result of container study. It is a simple container system implements by using the Linux namespace system. Since, longtea is not complete container system, it is not suitable for production use. Just use it for study.
curl -sSL https://raw.githubusercontent.com/chungjung-d/longtea/develop/install.sh | sudo bash
pull the image on the docker hub. If not specified the tag, the latest tag is used.
$ sudo longtea pull -i <image name>:<tag> # pull the image with tag
$ sudo longtea pull -i <image name> # pull the image with latest tag
example
$ sudo longtea pull -i ubuntu:22.04
Create the container. If not specified the tag, the latest tag is used and defualt image tag is latest. The -n option is onptional and if not specified, the container name auto set "< image name > _ < tag >".
$ sudo longtea create -n <container name> -i <image name>:<tag> # create the container with container name
$ sudo longtea create -i <image name>:<tag> # create the container with image name container name auto set <image name>_<tag>
example
$ sudo longtea create -n ubnutu_test -i ubuntu:22.04
$ sudo longtea create -i ubuntu:22.04
Start the created container with container name. If the tag version is not pulled yet, it return error message.
$ sudo longtea start -n <container name> # start the container with container name
example
$ sudo longtea start -n ubuntu_22.04
Run command is combination of create and start command. If the tag version is not pulled yet, it return error message.
$ sudo longtea run -n <container name> -i <image name>:<tag> # create and start the container with container name
$ sudo longtea run -i <image name>:<tag> # create and start the container with image name container name auto set <image name>_<tag>
Remove the container or image. Use -i option to remove the image and -c option to remove the container. If want to remove all image use just image name without tag.
$ sudo longtea remove -i <image name>:<tag> # remove the image with tag
$ sudo longtea remove -i <image name> # remove all image with image name
$ sudo longtea remove -c <container name> # remove the container
List the container or image. Use -i option to list the image and -c option to list the container or use both -ic option to list all.
$ sudo longtea list -ic # list all container and image
$ sudo longtea list -i # list all image
$ sudo longtea list -c # list all container
It need to implement the following features. It will be implemented on version 0.2.0.
- Implement the network namespace
- Implement the background run
- Implement the Squlite DB connection to manage the container