@ -0,0 +1,35 @@ |
|||
# FROM ubuntu:20.04 |
|||
FROM alpine:3.7 |
|||
|
|||
RUN apt-get update && \ |
|||
apt-get -y dist-upgrade && \ |
|||
apt-get install -y \ |
|||
apt-utils \ |
|||
build-essential \ |
|||
wget \ |
|||
curl \ |
|||
git \ |
|||
neovim \ |
|||
vim && \ |
|||
apt-get clean |
|||
|
|||
RUN curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \ |
|||
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim |
|||
RUN curl -fLo ~/.vim/autoload/plug.vim --create-dirs \ |
|||
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim |
|||
RUN curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \ |
|||
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim |
|||
|
|||
# install rust |
|||
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y |
|||
|
|||
RUN git clone https://github.com/arnaucube/configs.git && \ |
|||
cp configs/.vimrc ~/ && \ |
|||
cp configs/vimconfigbase.vim ~/ && \ |
|||
mkdir ~/.config && \ |
|||
mkdir ~/.config/nvim && \ |
|||
cp configs/init.vim ~/.config/nvim/ |
|||
|
|||
WORKDIR /root |
|||
|
|||
ENTRYPOINT /bin/sh |
@ -0,0 +1,47 @@ |
|||
#!/bin/bash |
|||
|
|||
if [[ $1 == "help" ]]; then |
|||
echo "lc (Launch Container) help: |
|||
=========================== |
|||
- lc new <dockerfile> <container_name> <image_name>: create new image & |
|||
container using the selected dockerfile |
|||
- available dockerfiles: go, rust |
|||
- lc stop <container_name>: stop container |
|||
- lc rm <container_name>: remove container |
|||
- lc ls: list containers |
|||
- lc stop <container_name> <image_name>: stop container |
|||
- lc <container_name>: launch container |
|||
" |
|||
exit 0 |
|||
elif [[ $1 == "new" ]]; then |
|||
# $2: lang, $3: container_name, $4: image_name |
|||
|
|||
if [[ $2 == "rust" ]]; then |
|||
2="Dockerfile.rust" |
|||
elif [[ $2 == "go" ]]; then |
|||
2="Dockerfile.go" |
|||
else |
|||
echo "available dockerfiles: go, rust" |
|||
exit 0 |
|||
fi |
|||
|
|||
sudo docker build -t $4 -f $2 . |
|||
sudo docker run -it --entrypoint=/bin/bash --name $3 $4 |
|||
exit 0 |
|||
elif [[ $1 == "stop" ]]; then |
|||
# $2: container_name |
|||
sudo docker stop $2 |
|||
exit 0 |
|||
elif [[ $1 == "rm" ]]; then |
|||
# $2: container_name |
|||
sudo docker stop $2 |
|||
sudo docker rm $2 |
|||
exit 0 |
|||
elif [[ $1 == "ls" ]]; then |
|||
sudo docker ps -a |
|||
exit 0 |
|||
fi |
|||
|
|||
# $1: container_name, $2: image_name |
|||
sudo docker start $1 |
|||
sudo docker container exec -it $1 bash |