実現したいこと
SCSSで指定した背景画像を開発環境(http://localhost/)で表示したい。
発生している問題・分からないこと
DockerにてLaravel10(vite)環境を構築しています。
SCSSで指定したbackground-imageが表示されず。。
はじめてvite環境を触るのでご知見お借りしたいです。
■事象
SCSSでbackground-imageにpublic/img配下に設置した画像を指定しました。
.icn-selectbox { background-image: url(/img/arrow-selectbox.svg); }
ブラウザで確認したところ、指定した画像のパスが「http://localhost:5173/img/arrow-selectbox.svg」となっていました。
http://localhost:5173を参照するのではなくhttp://localhostを参照するように何かしらしなければならないのか、もしくはhttp://localhost:5173を参照していること自体はあっているのかがわからず、対応方法が不明です。
調べるとvite.config.jsのserverのオプションでhostという記載を多く見かけたのですが、解決できませんでした。
ご教示いただけますと幸いです。
不足している情報等ございましたらお申し付けください。
よろしくお願いいたします。
該当のソースコード
SCSS
1.selectbox { background-image: url(/img/arrow-selectbox.svg);}
vite.config.js
1import { defineConfig } from 'vite'; 2import laravel from 'laravel-vite-plugin'; 3 4export default defineConfig({ 5 plugins: [ 6 laravel({ 7 input: [ 8 'resources/css/app.css', 9 'resources/scss/app.scss', 10 'resources/js/app.js', 11 ], 12 refresh: true, 13 }), 14 ], 15 server: { 16 hmr: { 17 host: 'localhost', 18 }, 19 watch: { 20 usePolling: true, 21 }, 22 }, 23}); 24
docker
1services: 2 app: 3 container_name: app 4 build: ./docker/php 5 volumes: 6 - .:/var/www 7 ports: 8 - 5173:5173 9 nginx: 10 image: nginx 11 container_name: nginx 12 ports: 13 - 80:80 14 volumes: 15 - .:/var/www 16 - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf 17 working_dir: /var/www 18 depends_on: 19 - app 20 db: 21 platform: linux/x86_64 22 image: mysql:5.7 23 container_name: db 24 environment: 25 MYSQL_ROOT_PASSWORD: root 26 MYSQL_DATABASE: database 27 MYSQL_USER: db-user 28 MYSQL_PASSWORD: db-pass 29 TZ: 'Asia/Tokyo' 30 command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci 31 volumes: 32 - ./docker/db/data:/var/lib/mysql 33 - ./docker/db/my.cnf:/etc/mysql/conf.d/my.cnf 34 - ./docker/db/sql:/docker-entrypoint-initdb.d 35 ports: 36 - 3306:3306 37 phpmyadmin: 38 image: phpmyadmin/phpmyadmin 39 environment: 40 - PMA_ARBITRARY=1 41 - PMA_HOST=mysql 42 links: 43 - db 44 ports: 45 - 8081:80 46 volumes: 47 - /sessions 48volumes: 49 mysql-data:
docker-compose.yml app └ public └ img └ arrow-selectbox.svg └ resources └ scss └ common.scss └ vite.config.js
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
- 画像の指定を相対パスに変更→ルートは変わらないので意味なしでした
- viteの設定ファイルのserverにオプションを追加→変わらずでした
補足
[docker環境]
・nginx
・mysql
※docker-compose.ymlの内容も記載いたします。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。