gitlab ci lỗi không thể dịch tên máy chủ


8

Tôi sử dụng gitlab-ci trong ứng dụng rails của mình, nó chạy chính xác cho đến ngày hôm qua nhưng nó không vượt qua do:

rake aborted!
PG::ConnectionBad: could not translate host name "postgres" to address: Name does not resolve
/usr/local/bundle/gems/pg-1.1.4/lib/pg.rb:56:in `initialize'
/usr/local/bundle/gems/pg-1.1.4/lib/pg.rb:56:in `new'
/usr/local/bundle/gems/pg-1.1.4/lib/pg.rb:56:in `connect'
....
Tasks: TOP => db:schema:load => db:check_protected_environments

.gitlab-ci.yml:

rspec:
  stage: test
  services:
    - postgres:10
  variables:
    DATABASE_URL: "postgresql://postgres:postgres@postgres:5432/$POSTGRES_DB"
    POSTGRES_DB: db_test
    RAILS_ENV: test
  before_script:
    - ruby -v
  script:
    - cp config/application.sample.yml config/application.yml
    - cp config/database.sample.yml config/database.yml
    - bundle exec rake db:schema:load
    - bundle exec rspec spec

Có vẻ như nó không thể tìm thấy dịch vụ postgres đang chạy hoặc vì lý do nào đó dịch vụ cơ sở dữ liệu không chạy chính xác, tôi đoán một số nội bộ đã thay đổi trong gitlab-ci.


Trải qua vấn đề tương tự với ứng dụng django là tốt. Chắc chắn một cái gì đó nội bộ thay đổi.
Ojas Kale

Câu trả lời:


9

EDIT: Đây là một thay đổi dự định cho hình ảnh, bây giờ bạn phải đặt mật khẩu hoặc cấu hình thêm:

Nếu bạn biết rằng bạn muốn không an toàn (tức là bất kỳ ai cũng có thể kết nối mà không cần mật khẩu từ bất cứ đâu), thì POSTGRES_HOST_AUTH_METHOD = tin tưởng là cách bạn chọn tham gia vào đó.


Điều này dường như đã được giới thiệu khi hình ảnh docker được nâng cấp lên bản phát hành mới .

Thay vào đó, bạn có thể kéo hình ảnh 10.11 để tránh sự cố này:

services:
- postgres:10.11

Không chắc chắn tại sao điều này xảy ra, nhưng chúng tôi đang trải nghiệm tương tự kể từ lần cập nhật hình ảnh docker cuối cùng . Tôi đã tìm thấy điều này cũng là trường hợp đi từ 12.1 đến 12.2.


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.