Skip to content

Docker image, automatic builds. #171

Closed

Description

@shinebayar-g

It would be nice to have docker image ready.

I'll try to build docker image for the project and make it build automatically for every commit that passes test (do we have one?).

We've production ready drone setup that we use daily. If you don't mind I'd use that.

Activity

  1. self-assigned this
    on Jan 24, 2019
  2. bugy commented on Jan 24, 2019

    @bugy
    Owner

    Hi, thanks, nice idea. Where this image will be pushed? I don't know much about sharing docker images
    Regarding the build tool - at the moment the whole process is in Travis CI: python and js tests, js build, whole package build

  3. shinebayar-g commented on Jan 24, 2019

    @shinebayar-g
    CollaboratorAuthor
  4. bugy commented on Jan 24, 2019

    @bugy
    Owner

    Hi @shinebayar-g after some struggling I created an organization on docker hub and added you to a team. I believe I also have to create a repository and grant you permissions to it, right?

  5. shinebayar-g commented on Jan 25, 2019

    @shinebayar-g
    CollaboratorAuthor

    Hi, I just checked docker repository. Looks like I don't have permission to create repo. Please create repository and add me. I'll test permissions to push, tag and delete.

  6. bugy commented on Jan 25, 2019

    @bugy
    Owner

    Added. Also I added automatic builds there: so whenever a commit to master happens, it will build :dev image based on Dockerfile. So there is no need to update any CI tool, just add a Dockerfile

  7. shinebayar-g commented on Jan 25, 2019

    @shinebayar-g
    CollaboratorAuthor

    Great.

  8. added 3 commits that reference this issue on Feb 6, 2019
  9. bugy commented on Feb 7, 2019

    @bugy
    Owner

    Now images are pushed. Still to be done:

    • remove dev tagging on before_deploy for non-master branches
    • added versioning for stable docker images
  10. added a commit that references this issue on Feb 7, 2019
  11. 22 remaining items

  12. shr207-iMerit commented on Nov 4, 2021

    @shr207-iMerit

    Hey @bugy
    I created a new issue for one of my docker problems. Linked it here, please let me know if you need me to create the issue here.
    Link to issue:

  13. hiteshkumarthakur commented on Jan 10, 2023

    @hiteshkumarthakur
  14. bugy commented on Jan 10, 2023

    @bugy
    Owner

    oh nice, thank ou @hiteshkumarthakur !

  15. SaberStrat commented on Mar 13, 2023

    @SaberStrat

    Hi @tristanlatr, thanks for reporting! The thing is, that it's not a required dependency: people can use Script server without auth at all, or with google oauth. And to make the image small, I ignored all optional dependencies

    However, I'm thinking about making a "fat" image, in addition to a minimal one. With all the optional dependencies + some linux utilities out of the box. But that's not coming in the nearest week.

    I too was semi-expecting the ldap3 package to be included, since it seemed supported out of the box...and semi-expecting it to be missing since missing packages are a classic Python problem.

    I don't think required components for features an app ships with - even if not enabled by default - should be left out of an image. Sure, you can install it in the container (assuming Firewall rules don't make that a hassle) or create a custom image. And it's perfectly normal to expect to install requirements when running script-server 'bare metal'. But with images it's something else imo. Might be a matter of taste, what images should come with - especially where Python is involved and its modular nature. But from experience, unless otherwise noted in the image name or tag, I expect images to be complete for all supported features. If not, then the image is more of a thin or slim image, rather than a full featured image.

    My two cents on whether to optimize image sizes or not :)

    How many more packages/bytes would need to be included in a full featured image?

  16. bugy commented on Mar 13, 2023

    @bugy
    Owner

    Hi @SaberStrat it makes sense :) Either current image can be called slim or there could be another image like all-deps, not a big difference as for me.
    I moved it to a separate ticket #637, because I forgot about this already.

  17. hulleyrob commented on Sep 12, 2023

    @hulleyrob

    would it be possible to add maybe something to the admin page where we can pip install stuff?

    otherwise is the only way to run python scripts that require external modules to create a bespoke image?

  18. MNeill73 commented on Sep 12, 2023

    @MNeill73
  19. hulleyrob commented on Sep 12, 2023

    @hulleyrob

    Yeah I'm running it in docker. If running pip from a script works I can work with that for some reason I just thought it wouldn't.

    In the meantime I've got a dockefile working with compose to pip install my requirements file during creation but I don't really want to recreate the container every time a script needs a module.

  20. MNeill73 commented on Sep 12, 2023

    @MNeill73
  21. hulleyrob commented on Sep 12, 2023

    @hulleyrob

    Yeah shelling in and doing it works fine that was the first thing I tried just seemed like I was missing something obvious and easier.

  22. gtuxyco commented on Oct 23, 2023

    @gtuxyco

    Are there plans to make images for ARM?
    I was trying to use in a raspberry pi, but after a while I noticed the docker image is amd64

  23. dreness commented on Nov 11, 2023

    @dreness

    Are there plans to make images for ARM? I was trying to use in a raspberry pi, but after a while I noticed the docker image is amd64

    There is an arm64 image currently published under a 'dev' tag, which is built from master - so perhaps not yet 'stable'.
    https://hub.docker.com/r/bugy/script-server/tags

  24. peterpepo commented on Nov 30, 2023

    @peterpepo

    I would like to run following script.
    Do I have to run directly on host, or can I spin up docker image?

    jdownloader_enable.sh

    sudo systemctl daemon-reload
    sudo systemctl start jdownloader.service
    sudo systemctl enable jdownloader.service
  25. ciscoivan commented on Feb 29, 2024

    @ciscoivan

    I'm having some issues with deployment

    [root@localhost conf.json]# docker logs bcaeada23707
    2024-02-29 03:28:08,088 [root.INFO] Starting Script Server, v1.18.0
    2024-02-29 03:28:08,090 [migrations.INFO] Applying migration add_execution_info_to_log_files
    2024-02-29 03:28:08,090 [migrations.INFO] Applying migration introduce_access_config
    Traceback (most recent call last):
    File "/app/launcher.py", line 11, in
    main.main()
    File "/app/src/main.py", line 86, in main
    migrations.migrate.migrate(TEMP_FOLDER, CONFIG_FOLDER, SERVER_CONF_PATH, LOG_FOLDER)
    File "/app/src/migrations/migrate.py", line 388, in migrate
    migration_descriptor.callable(context)
    File "/app/src/migrations/migrate.py", line 210, in __introduce_access_config
    content = file_utils.read_file(file_path)
    File "/app/src/utils/file_utils.py", line 63, in read_file
    with open(path, mode, newline=newline) as f:
    IsADirectoryError: [Errno 21] Is a directory: '/app/conf/conf.json'
    [root@localhost conf.json]#

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions