rails勉強中なのですが、開発途中でherokuにデプロイしたあとlocalに戻って開発しようとすると、こちらが出る様になっていました。
Mysql2::Error::ConnectionError Access denied for user 'b4b916199e40e7'@'ip-10-0-12
Dockerを利用しているので、
docker-compose exec db mysql -u root -p
でmysqlにログインは出来るのですが、ここからどの様に解決にむけて動けばいいのかが分かりません。
まずb4b916199e40e7'@'ip-10-0-97-237.ec2.internalがどこから出てきたものなのか理解できていません。
今後は'b4b916199e40e7'@'ip-10-0-97-237.ec2.internal' に権限を与える方向で解決を目指すのか、
もしくはログインしているユーザーをrootなどに変更する方向で解決を目指して行けば良いのでしょうか。
宜しくお願い致します。
追記
docker-compose.yml
version: '3' services: app: build: context: . env_file: - ./environments/db.env command: bundle exec puma -C config/puma.rb ports: - 3000:3000 volumes: - .:/webapp - tmp-data:/webapp/tmp - log-data:/webapp/log depends_on: - db environment: - "SELENIUM_DRIVER_URL=http://selenium_chrome:4444/wd/hub" db: image: mysql:5.7 env_file: - ./environments/db.env volumes: - db-data:/var/lib/mysql web: build: context: containers/nginx volumes: - ./public:/webapp/public - tmp-data:/webapp/tmp ports: - 80:80 depends_on: - app selenium_chrome: image: selenium/standalone-chrome-debug logging: driver: none volumes: tmp-data: log-data: db-data:
Dockerfile
FROM ruby:2.5.1 RUN apt-get update -qq && \ apt-get install -y build-essential \ nodejs \ imagemagick RUN mkdir /webapp WORKDIR /webapp ADD Gemfile /webapp/Gemfile ADD Gemfile.lock /webapp/Gemfile.lock RUN bundle install ADD . /webapp RUN mkdir -p tmp/sockets
database.yml
default: &default adapter: mysql2 encoding: utf8 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> username: <%= ENV.fetch('MYSQL_USER') { 'user_name' } %> password: <%= ENV.fetch('MYSQL_PASSWORD') { 'user_password' } %> host: db development: <<: *default database: webapp_development test: <<: *default database: webapp_test
追記
/private/etc/hosts
## # Host Database # # localhost is used to configure the loopback interface # when the system is booting. Do not change this entry. ## 127.0.0.1 localhost 255.255.255.255 broadcasthost ::1 localhost # Added by Docker Desktop # To allow the same kube context to work on the host and the container: 127.0.0.1 kubernetes.docker.internal # End of section
回答1件
あなたの回答
tips
プレビュー