-
Notifications
You must be signed in to change notification settings - Fork 21
dev: add docker developer container for easier installation and usage #305
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Workflows are failing because of |
|
Now everything is ok |
JBludau
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think your editor is using the wrong file endings
I guess. Fixed |
I am new in this project and don't know everyone. Would be happy if you suggest someone to review docker-related PRs This PR does not include any CI for docker |
gliga
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LG
Note that CI runs do not need to run things end to end. Even checking the correctness of the dockerfile itself is a step up. |
3420edc to
ccb78f5
Compare
…uild (build may fail)
|
Everything is ready to merge now. Add following CI runs:
@gliga can you re-approve this one? |
gliga
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LG again
This PR suggest flexible Docker container, that can be used as a Docker developer container with tweaking all necessary secrets (SSH keys, default username and password, port exposure).
The secrets are added with default template, but they are not tracked by git in order to avoid accidental data exposure by doing something like
git add ./For example, if the container is located on remote server X - there is no need to connect to X and then connect to the container. You can do
ssh -i [path to private SSH key] -p [DockerExposedPort] [username inside container or root]@[X address]or using ssh config 1.By default this data is templated, which means that if the user decided to leave the secrets as is - the Docker container will be builded with default values (root user, no SSH, no port exposure, limited functionality).
This allows using this container both as devcontainer and as default invocation container (as it was with
pkscript in the past,./pk [PykokkosProgram])Below is additional data, that may be needed for users or developers
It was my personal devcontainer (modified with all needed prompts) that I used for pykokkos and pykokkos-base installation for a couple of months.
Works both with the terminal and VS Code connection.
Footnotes
SSH config, suggested for direct Docker devcontainer ssh connection
Host [any alias for Docker container]
HostName [actual server address]
User [user name]
Port [exposed port number]
IdentityFile ~/.ssh/[path to private key]
ControlMaster auto
ServerAliveInterval 60
ServerAliveCountMax 30
TCPKeepAlive yes
ForwardAgent yes
StrictHostKeyChecking no
That allows to connect to my Docker container like:
ssh [Docker container alias]↩