mdneuzerling / lambdr

Run R containers on AWS Lambda
https://lambdr.mdneuzerling.com
Other
131 stars 12 forks source link

Add docker primer vignette and overhaul container vignette #37

Closed jimgar closed 3 weeks ago

jimgar commented 4 weeks ago

Hey @mdneuzerling !

Sorry this took me so long to finish! Life has been busy.

I think this PR covers everything that I suggested we add to the package vignettes.

1) A new one that gives an intro to Docker 2) A much-expanded container vignette that now has an example project, plus optional sections about 2a) Choosing base images 2b) Dev Dockerfiles 2c) Build scripts 2d) The Runtime Interface Emulator (for local testing) 2e) Deployment with the console 2f) And deployment with CDK

I've tested all the steps and solutions in my personal AWS account, and some in a work account.

Any changes or suggestions... let 'em rip... :)

Jim

jimgar commented 3 weeks ago

Sorry I should have also said: I believe that this PR should be sufficient to close both issue https://github.com/mdneuzerling/lambdr/issues/31 and https://github.com/mdneuzerling/lambdr/issues/33.

mdneuzerling commented 3 weeks ago

Random thought @jimgar : why are we installing httr2 in the Dockerfiles? I don't think it's necessary. lambdr does have a dependency on httr though.

Although, I am getting an error using pak to install just lambdr and nothing else --- it seems to need the curl system dependency. Maybe it's related.

jimgar commented 3 weeks ago

Love this, thank you. Should see the new vignette appear in the website when in a few minutes.

You're welcome! Happy to give back and help out.

I like your writing style. It's good to have a guide here for people who are brand new to Docker.

Really appreciate that :)

jimgar commented 3 weeks ago

Random thought @jimgar : why are we installing httr2 in the Dockerfiles? I don't think it's necessary. lambdr does have a dependency on httr though.

Although, I am getting an error using pak to install just lambdr and nothing else --- it seems to need the curl system dependency. Maybe it's related.

Oh, that's interesting. I used httr2 in those because the example flags project needs it, and in my head the vignette was always building up to that.

I see now that I've also carried it over into the Docker intro vignette. It's probably a good idea to remove it from there, but before I do that and start fiddling around -- are you seeing the missing curl impact after removing httr2 from the flags project? Or is it using one of the template Dockerfiles for something else, perhaps when re-writing the readme?