ডকার-রচনা অবৈধ প্রকার, এটি একটি স্ট্রিং হওয়া উচিত


19

আমার কাছে ডকার-কমপোজ.আইএমএল ফাইলটিতে নিম্নলিখিত পরিবেশের পরিবর্তনশীল কনফিগার করা আছে:

version: '3'
services:
  server:
    ports:
     - 13045:3000
    environment:
     - NODE_CONFIG: '{"DATABASE_URL":"http://db:5984"}'

চালানোর চেষ্টা করার সময় docker-compose up, আমি এই ত্রুটিটি পাচ্ছি:

services.server.environment contains {"NODE_CONFIG": "{\"DATABASE_URL\":\"http://db:5984\"}"}, which is an invalid type, it should be a string

আমার কাছে পরিবেশের পরিবর্তনশীলটি একটি জেএসএন স্ট্রিংয়ে সেট করতে হবে ( https://github.com/lorenwest/node-config/wiki/En वातावरण- পরিবর্তনগুলি# নোড_কনফিগ দেখুন )

আমি কি এখানে কিছু ভুল করছি? আমি কি এটি কোনওভাবে কাজ করতে পারি?


আমি মনে করি সমস্যাটি মাঝামাঝি কোলন থেকে এসেছে, গিথুব ইস্যুতে এই মন্তব্য অনুসারে তালিকার পরিবর্তে ডিক ব্যবহার করে কাজ করা উচিত ( -এনওডি
-২০

উত্তর:


9

Docker কম্পোজ ফাইল রেফারেন্স যুক্তরাষ্ট্রের যে বিভিন্ন পরিবেশের হিসাবে সংজ্ঞায়িত করা হয় VARIABLE=valueঅ্যারের উপাদান। আপনার ক্ষেত্রে, ডকার-কমপোজ.আইএমএল ফাইলটি এতে পরিবর্তন করা দরকার:

version: '3'
services:
  server:
    ports:
     - 13045:3000
    environment:
     - NODE_CONFIG='{"DATABASE_URL":"http://db:5984"}'

নাঃ। আমি প্রথম চেষ্টা করেছিলাম, এটি কাজ করে না।
ত্রি এনগুইন

@ ট্রিনিগুইন স্ট্রেঞ্জ, এটি আমার জন্য কাজ করে
হেক্সাহলিক

ঠিক আছে, বিল্ডটি যেতে পারে, তবে নোড প্রক্রিয়াটি এটি গ্রহণ করে না।
ত্রি এনগুইন


2

ভেরিয়েবলের সামনে আপনাকে ড্যাশ সরিয়ে ফেলতে হবে। সিনট্যাক্স এর মতো ব্যবহার করুন:

   environment:
     NODE_CONFIG: '{"DATABASE_URL":"http://db:5984"}'
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.