Closed sklink closed 1 year ago
Attempted to add RUN chmod 775 /var/runtime/julia_depot -R
to the Jot Dockerfile
with no luck.
That's the first thing I would have tried as well.
For my debugging purposes, which Julia version are you using? I updated Jot to use 1.82 by default when I made that fix last week, so if you're using the defaults then it's probably that.
I don't think I'm going to get any time on this in the next 24 hours but I'll look at it this week.
On Wed, 2 Nov 2022, 04:48 Matt Doak, @.***> wrote:
Attempted to add RUN chmod 775 /var/runtime/julia_depot -R to the Jot Dockerfile with no luck.
— Reply to this email directly, view it on GitHub https://github.com/harris-chris/Jot.jl/issues/35#issuecomment-1299039225, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALDMVSHUAHUT6VUS7VF4BPLWGFX2PANCNFSM6AAAAAARUKSE5Y . You are receiving this because you are subscribed to this thread.Message ID: @.***>
Also, is there anything special about the responder function you're using? When we spoke last week, were you able to get the simple example from the documentation to run on AWS Lambda ok?
On Wed, 2 Nov 2022, 04:48 Matt Doak, @.***> wrote:
Attempted to add RUN chmod 775 /var/runtime/julia_depot -R to the Jot Dockerfile with no luck.
— Reply to this email directly, view it on GitHub https://github.com/harris-chris/Jot.jl/issues/35#issuecomment-1299039225, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALDMVSHUAHUT6VUS7VF4BPLWGFX2PANCNFSM6AAAAAARUKSE5Y . You are receiving this because you are subscribed to this thread.Message ID: @.***>
Seems like it might be related to this: https://stackoverflow.com/questions/66698034/aws-lambda-read-only-file-system-error-using-docker-image-to-store-ml-model
On Wed, 2 Nov 2022, 04:48 Matt Doak, @.***> wrote:
Attempted to add RUN chmod 775 /var/runtime/julia_depot -R to the Jot Dockerfile with no luck.
— Reply to this email directly, view it on GitHub https://github.com/harris-chris/Jot.jl/issues/35#issuecomment-1299039225, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALDMVSHUAHUT6VUS7VF4BPLWGFX2PANCNFSM6AAAAAARUKSE5Y . You are receiving this because you are subscribed to this thread.Message ID: @.***>
Yes, I landed on that as well. It's the Scratch.jl
package that's attempting to write so I'm looking for a way to either point it elsewhere or remove the related dependency (NPFinancial)
Thanks for the quick response. Will update if I find something.
Ended up adding this to your Dockerfile which worked:
RUN ln -s /var/runtime/julia_depot/logs/ /tmp/julia_depot/logs/
Some sort of before deploy hook into the Jot generated Dockerfile would cover this and some of the scenarios with binary issues. I did attempt to do that instead of writing it directly in the BuildDockerfile.jl
but had no luck getting it to pick up the string I would send.
We're okay running with our forked version for now. I could come back and attempt the Docker hook again as a PR once I'm done with this deliverable. Feel free to close this if you'd like.
Yes, that's a clever solution. I'm surprised this hasn't been a problem
before, I guess it's rare for packages to want to write to the
julia_depot
. I think a hook to allow arbitrary text to be added to the
Dockerfile would be a good feature, but it would also be nice to have Jot
ensure that the julia_depot is writeable anyway.
On Wed, 2 Nov 2022, 06:30 Matt Doak, @.***> wrote:
Ended up adding this to your Dockerfile which worked:
RUN ln -s /var/runtime/julia_depot/logs/ /tmp/julia_depot/logs/
Some sort of before deploy hook into the Jot generated Dockerfile would cover this and some of the scenarios with binary issues. I did attempt to do that instead of writing it directly in the BuildDockerfile.jl but had no luck getting it to pick up the string I would send.
We're okay running with our forked version for now. I could come back and attempt the Docker hook again as a PR once I'm done with this deliverable. Feel free to close this if you'd like.
— Reply to this email directly, view it on GitHub https://github.com/harris-chris/Jot.jl/issues/35#issuecomment-1299217608, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALDMVSHIWEEVLBVJLKLPKYDWGGDXZANCNFSM6AAAAAARUKSE5Y . You are receiving this because you commented.Message ID: <harris-chris/Jot .@.***>
I've been trying to implement this now, but I can't seem to square the circle. The problem as I see it is that:
Scratch.jl
needs to write to.Scratch.jl
seems to always write the Julia depot path, it can't be paramaterized to work any other way/tmp
folder gets emptied, but from testing it seems that it's empty when the function runs (even if it's had stuff added to it in the Dockerfile)Could I check this fits with your understanding? If you managed to make it work, where did you add the
RUN ln -s /var/runtime/julia_depot/logs/ /tmp/julia_depot/logs/
line above?
Actually never mind, I think I have this working. You can enter multiple paths for the depot path.
This should now be fixed in the most recent release - the DEPOT_PATH is writable.
I've successfully deployed the function to Lambda but am getting this error when running a test in the AWS Lambda dashboard:
So far I've tried to add the
--privileged
param todocker run
. I also tried adding extra permissions to the IAM Role that was created by Jot.jl.This build is coming from a GitHub runner.
Any suggestions?