Ngăn chặn Vagrant thao túng / etc / hosts


2

Khi config.vm.hostname được đặt trong Vagrantfile, Vagrant sẽ quản lý tên máy chủ. Hơn nữa, và đây là phần tồi tệ đối với tôi, nó thao túng / etc / hosts để chứa tên máy chủ trỏ đến 127.0.0.1 (localhost).

Điều này hầu như không có ý nghĩa ... đặc biệt là khi không có giao diện mạng công cộng. Vấn đề phát sinh là khi các ứng dụng sử dụng tên máy chủ để xác định địa chỉ IP để liên kết.

Đây là một ví dụ mô phỏng tập tin Vagrant để chứng minh vấn đề

Vagrant.configure(2) do |config|
  config.vm.box = "centos/7"
  config.vm.network :public_network, ip: "192.168.2.100", netmask: "255.255.255.0", bridge: ["eno1", "enp6s0"]
  config.vm.hostname = "test.mydomain.xyz"
end

Kết quả là một tập tin / etc / hosts như bên dưới.

127.0.0.1   test.mydomain.xyz test localhost localhost.localdomain localhost4 localhost4.localdomain4                                                                                 
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6                                                                                                        

Vì vậy, câu hỏi của tôi là

  1. Làm cách nào tôi có thể ngăn người lang thang thao tác với tập tin / etc / hosts theo cách này? Vì tôi tự quản lý tệp máy chủ, tôi có thể ngăn nó chạm vào tệp máy chủ không? Dường như không có tùy chọn nào trong Vagrant 1.8.1 cho điều đó.
  2. Làm thế nào để hành vi Vagrant mặc định này có ý nghĩa ở tất cả? Tôi nhớ cái gì

Cảm ơn bạn đã giúp đỡ!


Tôi đã biến chủ đề này thành trang GIThub của Vagrant github.com/mitchellh/vagrant/issues/7263
John
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.