# Having a hard time installing \`eth\` gem in a plugin in production

**URL:** https://meta.discourse.org/t/having-a-hard-time-installing-eth-gem-in-a-plugin-in-production/217496
**Category:** Development
**Created:** [February 8, 2022, 11:54am UTC](https://meta.discourse.org/t/having-a-hard-time-installing-eth-gem-in-a-plugin-in-production/217496 "2022-02-08T11:54:21Z")
**Posts on this page:** 1
**Showing post:** 3

<div class="post-metadata">

### Author: ![fzngagan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/fzngagan/32/259349_2.png) [@fzngagan](https://meta.discourse.org/u/fzngagan)
#### Post date: [February 8, 2022, 5:56pm UTC](https://meta.discourse.org/t/having-a-hard-time-installing-eth-gem-in-a-plugin-in-production/217496/3 "2022-02-08T17:56:02Z")

</div>

Here’s what I did. I logged in to the server and entered the docker container.

- create a folder called `gems`

- create a subdirectory `2.7.5` (ruby version used by production discourse on `tests-passed`)

- cd back to `gems` folder

- Run commands in this fashion

- Now zip this folder.

- Exit the docker container and copy the zip outside the docker container using `docker cp` command.

- Connect to your server via filezilla or vscode and download the zip.

- extract it to the root folder of your plugin. So your plugin folder would now have the gems directory.

- Now push the gems folder with the plugin to github.

Now when you do a rebuild on discourse with this plugin, discourse will use the dependencies you supplied it and won’t try to install them. This is a temporary workaround and would need to be re-done once discourse bumps the ruby version.

But here’s the big question, why do the same commands that work when running from the terminal fail when discourse tries to run it. It would be really worth looking into and I hope there’s a simple fix.

---

_[View the full topic](https://meta.discourse.org/t/having-a-hard-time-installing-eth-gem-in-a-plugin-in-production/217496)._
