1
0
mirror of https://git.decapod.one/brethil/dotfiles synced 2024-11-22 03:21:30 +01:00

dev: add volumes to dockerfile

This commit is contained in:
bretello 2020-12-08 22:06:03 +01:00
parent d6e1aac0f2
commit 74dcf328aa
Signed by: brethil
GPG Key ID: 876AAC6290170FE7
3 changed files with 31 additions and 0 deletions

View File

@ -12,4 +12,5 @@ COPY id_ed25519.pub /root/.ssh/authorized_keys
WORKDIR /root/ WORKDIR /root/
COPY entrypoint.sh / COPY entrypoint.sh /
VOLUME ["/root/.dotfiles"]
CMD ["bash", "/entrypoint.sh"] CMD ["bash", "/entrypoint.sh"]

View File

@ -13,4 +13,5 @@ COPY id_ed25519.pub /root/.ssh/authorized_keys
WORKDIR /root/ WORKDIR /root/
COPY entrypoint.sh / COPY entrypoint.sh /
VOLUME ["/root/.dotfiles"]
CMD ["bash", "/entrypoint.sh"] CMD ["bash", "/entrypoint.sh"]

View File

@ -25,3 +25,32 @@ ansible-playbook -v -i ./ansible-hosts playbooks/setup.yml
``` ```
note: the ip address in `ansible-hosts` might have changed from `172.18.0.2`. note: the ip address in `ansible-hosts` might have changed from `172.18.0.2`.
## Docker images
- Build: `make build-arch` or `make build-debian` to build the image.
- Run: `make run` to run the docker container. This bind-mounts `../` to
`/root/.dotfiles`, making it possible to test the repo in the container.
## Docker + Ansible
Run `dotfiles-dev` image using `make run`. This starts the container with
the local repository bind-mounted on `/root/.dotfiles`. To use a custom volume:
```bash
docker run -v <volume>:/root/dofiles`
```
Ansible can now be used to test the installation.
```bash
# this will install dotfiles on the docker container
ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -i ansible-hosts \
-e local_development=true \
../ansible/playbooks/setup.yml
```
**IMPORTANT** if bind-mounting an already existing repository, run
`ansible` with `-e local_development=true` to avoid
clobbering the git history if you have unpushed commit (it won't
work if your repo is dirty).