i created a shopify app with shopify ruby template
https://github.com/Shopify/shopify-app-template-ruby
now i want to run this app with docker
but i am unable to do this
I am using postgres database and here is my docker file
version: '3'
services:
db:
image: postgres
volumes:
- ./web/tmp/db:/var/lib/postgresql/data
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
app:
build: .
image: rails-web
environment:
SHOPIFY_API_KEY: XXXXXXXXXXXXXXXXXXXXXXXX
SHOPIFY_API_SECRET: XXXXXXXXXXXXXXXXXXX
HOST: https://XXX-XXXX-XXXX-XXXX.ngrok-free.app
stdin_open: true
tty: true
ports:
- "80:3000"
working_dir: /web
volumes:
- ./web:/web
depends_on:
- db
But i didn’t working fine
i am getting en error
Failed to load module script: Expected a JavaScript module script but the server responded with a MIME type of "text/html". Strict MIME type checking is enforced for module scripts per HTML spec.
i am gettingthis for index.jsx and dev_embed.js
<!-- index.html-- >
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<!-- Ensures that the UI is properly scaled in the Shopify Mobile app -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<script type="module">
if (!import.meta.env || !import.meta.env.PROD) {
const script = document.createElement('script');
script.setAttribute('type', "module");
script.setAttribute('src', "./dev_embed.js");
document.getElementsByTagName('head')[0].append(script);
}
</script>
</head>
<body>
<div id="app"><!--index.jsx injects App.jsx here--></div>
<script type="module" src="/index.jsx"></script>
</body>
</html>
# index.jsx
import ReactDOM from "react-dom";
import App from "./App";
import { initI18n } from "./utils/i18nUtils";
// Ensure that locales are loaded before rendering the app
initI18n().then(() => {
ReactDOM.render(<App />, document.getElementById("app"));
});
# dev_embed.js
import RefreshRuntime from "/@react-refresh";
RefreshRuntime.injectIntoGlobalHook(window);
window.$RefreshReg$ = () => {};
window.$RefreshSig$ = () => (type) => type;
window.__vite_plugin_react_preamble_installed__ = true;
How can i fix this issue