Skip to content
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

Launch additional services in separate container #119

Open
1 of 4 tasks
csadorf opened this issue Apr 26, 2022 · 9 comments · May be fixed by #127
Open
1 of 4 tasks

Launch additional services in separate container #119

csadorf opened this issue Apr 26, 2022 · 9 comments · May be fixed by #127
Labels
enhancement New feature or request

Comments

@csadorf
Copy link
Member

csadorf commented Apr 26, 2022

The additional services (like Postgres or RabbitMQ) should be started as additional Docker services. This could for example be achieved via docker-compose.

AiiDAlab-launch would likely need some major revision to then support this, since it currently uses docker directly to manage the container(s).

Sub-tasks:

  • Create proof-of-concept docker-compose file that demonstrates the approach
  • Evaluate how we want to manage multiple containers within the context of aiidalab-launch (docker-compose, manually, external tool ?)
  • Revise aiidalab-launch to manage multiple containers based on approach identified in previous step

Dependencies

@csadorf
Copy link
Member Author

csadorf commented Apr 26, 2022

It looks like a similar approach for AiiDA only was implemented here: https://github.com/aiidateam/aiida_docker_compose, however the repository appears unmaintained.

@csadorf csadorf assigned yakutovicha and csadorf and unassigned yakutovicha Apr 26, 2022
@csadorf csadorf changed the title Launch additional services within Jupyterlab infrastructure and not within the user container Launch additional services in separate container May 17, 2022
@csadorf csadorf assigned yakutovicha and unassigned csadorf May 17, 2022
@csadorf
Copy link
Member Author

csadorf commented May 17, 2022

@yakutovicha I've made a proposal on how to break up this task into multiple sub-steps in the description above. Please feel free to propose revisions to those. Thank you!

@yakutovicha
Copy link
Member

I think I have the first somehow working version.

Here is a bunch of PRs that I am preparing in order to switch to the docker compose approach:

More information will follow.

@csadorf
Copy link
Member Author

csadorf commented Jun 15, 2022

@yakutovicha Could you please briefly document the remaining tasks for this?

@yakutovicha
Copy link
Member

yakutovicha commented Jun 22, 2022

So, here is the report of what has been done and what needs to be done:

[DONE]
To my knowledge, all the features that are available in the current stable version of the container are implemented in the aforementioned PRs. So from the user perspective, it is almost the same as before with one exception - AiiDA is now installed in a separate conda environment named aiida.

[TODO]

  • Implement handling of the new docker-compose approach within the aiidalab-launch package.
  • Create a rough estimate about how much of the API will need to be changed (which concepts are invalidated)
  • Decide whether to keep the old approach of single-docker-image and the new docker compose approach to coexist at least for the transition period.
  • Identify the API changes and ensure a smooth transition from a single-docker-image to the docker-compose.
  • Update the tests, making sure they pass.

@csadorf
Copy link
Member Author

csadorf commented Jun 22, 2022

I would suggest to add a TODO item "Create rough estimate about how much of the API will need to be changed (which concepts are invalidated)". I would like to see some planning of those changes before we move into the implementation phase (even prototyping).

@csadorf csadorf added the enhancement New feature or request label Jun 28, 2022
@yakutovicha
Copy link
Member

yakutovicha commented Jul 4, 2022

Edit by @csadorf : this task list is no longer valid.

Here is what needs to be done:

@csadorf
Copy link
Member Author

csadorf commented Jul 5, 2022

@yakutovicha Can you please create an issue for each individual unit of work and link them here as well as in the roadmap?

@csadorf csadorf assigned csadorf and unassigned yakutovicha Jul 19, 2022
@csadorf csadorf linked a pull request Jul 19, 2022 that will close this issue
@yakutovicha yakutovicha linked a pull request Jul 20, 2022 that will close this issue
@unkcpz
Copy link
Member

unkcpz commented Oct 19, 2022

I add the stack image aiidalab/aiidalab-docker-stack#319 and tested that it can be started with the services.

@csadorf csadorf removed their assignment Oct 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants