diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 0000000..f8a4fc4 --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1,26 @@ +FROM rust:1.66 + +ARG USERNAME=lldapdev +ARG USER_UID=1000 +ARG USER_GID=$USER_UID + +# Create the user +RUN groupadd --gid $USER_GID $USERNAME \ + && useradd --uid $USER_UID --gid $USER_GID -m $USERNAME \ + && apt-get update \ + && apt-get install -y sudo \ + && echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \ + && chmod 0440 /etc/sudoers.d/$USERNAME + +RUN apt update && \ + curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - && \ + apt update && \ + apt install -y --no-install-recommends nodejs libssl-dev musl-dev make perl curl + +RUN RUSTFLAGS=-Ctarget-feature=-crt-static cargo install wasm-pack \ + && npm install -g rollup \ + && rustup target add wasm32-unknown-unknown + +USER $USERNAME +ENV CARGO_HOME=/home/$USERNAME/.cargo +ENV SHELL=/bin/bash \ No newline at end of file diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 0000000..cb3a95d --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,5 @@ +{ + "name": "LLDAP dev", + "build": { "dockerfile": "Dockerfile" }, + "forwardPorts": [3890, 17170] +} diff --git a/.dockerignore b/.dockerignore index c947f9d..3926541 100644 --- a/.dockerignore +++ b/.dockerignore @@ -28,6 +28,10 @@ package.json # Pre-build binaries *.tar.gz +# VSCode dirs +.vscode +.devcontainer + # Various config files that shouldn't be tracked .env lldap_config.toml diff --git a/.gitignore b/.gitignore index 5bdca21..7646bac 100644 --- a/.gitignore +++ b/.gitignore @@ -23,6 +23,7 @@ server_key *.tar.gz # Misc +.vscode .env recipe.json lldap_config.toml