-
-
Notifications
You must be signed in to change notification settings - Fork 777
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
Fix "no implicit conversion of Hash into Integer" error when running docker-compose up locally #3068
Comments
This comment was marked as resolved.
This comment was marked as resolved.
@SAUMILDHANKAR @JessicaLucindaCheng @tamara-snyder @answebdev just created a new issue for the Docker error that new volunteers have been experiencing. As this is my first new issue, please let me know if you have any suggestions as to how it could be improved. Progress: Determined a temp fix, but still looking into permanent solution. Reminder: I will not be able to attend any hfla meetings this week. The next meeting I can attend will be Tuesday, 4/26. Thanks! |
@ericvennemeyer Good job on writing the issue! I made the following changes to what you wrote:
|
@Providence-o @ExperimentsInHonesty Even though Eric has not completed a good first issue yet, Bonnie (at the Sun, Apr 17 meeting) said it was okay for Eric to start work on this issue because Eric has already done a lot of research and work associated with figuring out a fix to the error. Also, I know usually we wait until the issue has been given a Milestone by a PM and prioritized in the Prioritized Backlog column before we allow developers to work on it. However, I think an exception can be made for Eric to self-assign and continue working on this issue since Eric has already done a lot of research and work to figure out a solution to the problem in order to be able to use Docker to run the website locally. |
@JessicaLucindaCheng Thanks for the adjustments to my original issue. I'm going to wrap up work on it for this week. Please find my progress report below. The next meeting I will be able to attend is this coming Tuesday, 4/26, at 7pm. i. ii. Here are some potential resolutions to the problem:
iii. iv. |
@ericvennemeyer Thanks for the update! We can discuss the next steps at the Tue, Apr 26 meeting. |
@JessicaLucindaCheng @SAUMILDHANKAR Update per the website team meeting on Tuesday, 4/26: To follow up on last night's meeting, I rechecked the images listed in the official Jekyll Docker image registry. As mentioned, none of them exactly match the versions of Jekyll/Ruby that we're looking for. However:
I'm assuming that it's more important for the Jekyll version to be closer, in order to ensure the site is served locally in the same way it would be when live, so my best guess for now is to recommend option 1. |
@JessicaLucindaCheng @SAUMILDHANKAR One last update for the week: i. In the meantime, @Aveline-art suggested a possible way to modify iii. Have a great weekend! |
@ericvennemeyer Thanks for sharing your update and making great progress on your issue. Just wanted to let you know that there is no website team meeting on Tuesday, 5/3. Our next team meeting would be the Sunday all-team meeting on 5/8. We would still be doing one-off meetings if required and following up on slack channel as well. Keep up the good work. Thank you. |
@SAUMILDHANKAR Thanks for the heads-up, I had forgotten there are no meetings this week. Unfortunately, I can't make the all-team meeting on Sunday, 5/8. I will continue to work on this issue, however, and will be available for a one-off meeting or Slack discussion if you would like to check in before next Tuesday 5/10. My schedule should get less weird after this week, so I will be able to attend meetings more regularly in the future. |
@ericvennemeyer I think an update on this issue with progress, blockers, availability, and ETA would suffice for a check in. Also, if there was anything you would like to discuss, I think a Slack discussion will work, unless you think a one-off meeting would be a better way to discuss it depending on the discussion item. |
@JessicaLucindaCheng Sounds good, I'll post an update on Friday. At the moment, I don't think I have anything more to discuss, but will reach out on Slack if something comes up in the next two days. Thanks. |
Hello @SAUMILDHANKAR @JessicaLucindaCheng! (Not sure if I need to tag you guys in each update, let me know if not.) Cool news! i. In order to test this out, other volunteers should simply alter the If this works, we could ultimately create a Docker Hub repo for Hack For LA and keep the image there, so the organization can control the credentials for the account. The problem, as before, would be that if anything ever changes with GitHub Pages, or there are any problems with the image down the road, someone at H4LA will have to be responsible for maintaining all of this. Given that, I would like to try creating one more Docker image that uses the official GitHub Pages ruby gem, which is maintained externally and always pinned to the GH Pages dependency versions. If I'm understanding Docker correctly, this gem will be installed fresh whenever someone uses ii. iii. iv. As a reminder, I can't make the all team meeting on Sunday 5/8. I will attend the dev meeting on Tuesday 5/10. |
@ericvennemeyer Thanks for all your hard work on this issue! You don't have to @ mention us every time you give a progress update. You only have to @ mention us if you have a question, want feedback, or want us to respond to something. |
i. I think the best solution is to maintain our own Docker Hub repo with our own GH-Pages-specific image. @cnk suggested in a slack discussion that maintaining this image could be a good starter project for volunteers on the Ops team. I will reach out to Ops and loop in the Website technical leads next week to see about setting something like that up. In the meantime, I would like to spend a few days streamlining the image I created last week. ii. iii. iv. |
i. ii. iii. iv. |
i. ii. |
Please add update using the below template (even if you have a pull request). Afterwards, remove the 'To Update !' label and add the 'Status: Updated' label.
If you need help, be sure to either: 1) place your issue in the developer meeting discussion column and ask for help at your next meeting, 2) put a "Status: Help Wanted" label on your issue and pull request, or 3) put up a request for assistance on the #hfla-site channel. You are receiving this comment because your last comment was before Tuesday, June 7, 2022 at 12:21 AM PST. |
i.
ii. iii. iv. |
Hey @ericvennemeyer, I was also having issues with |
Hey @DonaldBrower, thanks for sharing that! I've seen that webrick error mentioned during my researches, and I had thought it was a problem between |
The latest versions of That leaves the
|
@DonaldBrower Thanks for the explanation. I do remember reading that issue early on, but didn't know how to understand it at the time. If GitHub Pages ever moves to Ruby 3, this will be super helpful information to have when updating the Dockerfile. |
i. ii. iii. iv. |
Overview
As a new volunteer developer, I want to be able to run
docker-compose up
without encountering a "no implicit conversion of Hash into Integer" error, so that I can run the website locally using Docker.For this issue, we will be investigating and finding a solution to the "no implicit conversion of Hash into Integer" error.
Details
Several new volunteers have experienced a "no implicit conversion of Hash into Integer" error in Docker while trying to run
docker-compose up
in their local development environments. A temporary fix has been found, but we need to find a permanent/sustainable solution in order to prevent this error from occurring in the future.Initial research suggests there is a conflict between the most recent version of Ruby (3.x) and Jekyll 3.9 and higher. The reason for this is not currently known, but the temp fix involves modifying the "image" keyword in the
docker-compose.yml
file (located in the root of thewebsite
directory) from:to:
This will tell Docker to pull a Jekyll image that uses an older version of Ruby (2.7). However, this will cause a conflict when merging a local branch with
gh-pages
, and may also create security vulnerabilities in the website.Action Items
Resources/Instructions
Official Jekyll Docker image page on Docker Hub
Jekyll-Docker repo on GitHub
Links to various posts by other users experiencing same/similar issues:
envygeeks/jekyll-docker#335
https://talk.jekyllrb.com/t/error-no-implicit-conversion-of-hash-into-integer/5890
https://stackoverflow.com/questions/66113639/jekyll-serve-throws-no-implicit-conversion-of-hash-into-integer-error
The text was updated successfully, but these errors were encountered: