mirror of
https://github.com/arnaucube/configs.git
synced 2026-02-10 04:26:41 +01:00
Add container launcher script
This commit is contained in:
35
launch-container/Dockerfile.rust
Normal file
35
launch-container/Dockerfile.rust
Normal file
@@ -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
|
||||
47
launch-container/lc
Executable file
47
launch-container/lc
Executable file
@@ -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
|
||||
Reference in New Issue
Block a user