######質問した経緯
AWSにて作成/デプロイしたアプリをDockerを用いて環境構築の作成を行っているのですが、
「Dockerfile」「dockercompose」「database.yml」「nginx.conf」を作成した後、
イメージをビルドしようと思い
docker-compose build
を実行すると
docker.errors.DockerException: Error while fetching server API version: ('Connection aborted.', PermissionError(13, 'Permission denied')) [16526] Failed to execute script docker-compose
とのエラーが発生しました。
作成した「Dockerfile」「dockercompose.yml」「database.yml」「nginx.conf」は下記の通りになります。(FunToDrawはアプリ名になります)
Dockerfile
1FROM ruby:2.6.2 2 3RUN apt-get update -qq && \ 4 apt-get install -y build-essential \ 5 libpq-dev \ 6 nodejs \ 7 vim 8 9RUN mkdir /FunToDraw 10 11WORKDIR /FunToDraw 12 13ADD Gemfile /FunToDraw/Gemfile 14ADD Gemfile.lock /FunToDraw/Gemfile.lock 15 16RUN gem install bundler 17RUN bundle install 18 19ADD . /FunToDraw 20 21RUN mkdir -p tmp/sockets 22RUN mkdir -p tmp/pids 23
dockercomposeyml
1version: '3' 2services: 3 # db: 4 # image: mysql:5.7 5 # environment: 6 # MYSQL_ROOT_PASSWORD: password 7 # MYSQL_USER: user 8 # MYSQL_PASSWORD: 1234 9 # MYSQL_DATABASE: FunToDraw_db 10 # volumes: 11 # - mysql-data:/var/lib/mysql 12 # ports: 13 # - "4306:3306" 14 15 app: 16 build: . 17 command: bundle exec puma -C config/puma.rb -e production 18 volumes: 19 - .:/FunToDraw 20 - public-data:/FunToDraw/public 21 - tmp-data:/FunToDraw/tmp 22 - log-data:/FunToDraw/log 23 24 web: 25 build: 26 context: containers/nginx 27 volumes: 28 - public-data:/FunToDraw/public 29 - tmp-data:/FunToDraw/tmp 30 ports: 31 - 80:80 32 33volumes: 34 # mysql-data: 35 public-data: 36 tmp-data: 37 log-data:
databaseyml
1# SQLite version 3.x 2# gem install sqlite3 3# 4# Ensure the SQLite 3 gem is defined in your Gemfile 5# gem 'sqlite3' 6# 7default: &default 8 adapter: mysql2 9 encoding: utf8 10 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> 11 username: <%= ENV.fetch('MYSQL_USER') { 'root' } %> 12 password: <%= ENV.fetch('MYSQL_PASSWORD') { 'password' } %> 13 host: db 14 15development: 16 <<: *default 17 database: myapp_development 18 19test: 20 <<: *default 21 database: myapp_test 22 23production: 24 <<: *default 25 database: <%= ENV['DB_DATABASE'] %> 26 adapter: mysql2 27 encoding: utf8mb4 28 charset: utf8mb4 29 collation: utf8mb4_general_ci 30 host: <%= ENV['DB_HOST'] %> 31 username: <%= ENV['DB_USERNAME'] %> 32 password: <%= ENV['DB_PASSWORD'] %>
eginxconf
1upstream myapp { 2 server unix:///FunToDraw/tmp/sockets/puma.sock; 3} 4 5server { 6 listen 80; 7 server_name localhost; 8 9 access_log /var/log/nginx/access.log; 10 error_log /var/log/nginx/error.log; 11 12 root /FunToDraw/public; 13 14 client_max_body_size 100m; 15 error_page 404 /404.html; 16 error_page 505 502 503 504 /500.html; 17 try_files $uri/index.html $uri @FunToDraw; 18 keepalive_timeout 5; 19 20 location @FunToDraw { 21 proxy_set_header X-Real-IP $remote_addr; 22 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 23 proxy_set_header Host $http_host; 24 proxy_pass http://myFunToDraw; 25 } 26} 27
解決方法をご教示いただけませんでしょうか。
何卒、よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。