2016-11-17 6 views
5

मैं 512 एमबी रैम के साथ वीपीएस पर ओडू लॉन्च करने का प्रयास करता हूं। मैं डॉकर का उपयोग करता हूं। जब मैं सादे डॉकर के साथ कंटेनर लॉन्च करता हूं तो सब कुछ ठीक है। मैं उस तरह का शुभारंभ: postgres कंटेनर:डॉकर-रचना मेमोरी एरर

docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo --name db postgres 

odoo कंटेनर:

docker run -p 8069:8069 --name odoo --link db:db -t odoo 

कोई त्रुटि नहीं है, सब कुछ ठीक काम कर रहा है। तब मैं बंद, इस कंटेनर को हटाने और डोकर-लिखें सुविधा के साथ एक ही बात करने की कोशिश:

app: 
    image: odoo 
    tty: true 
    ports: 
     - "8069:8069" 
    volumes: 
     - ./addons:/mnt/extra-addons:ro,Z 
    links: 
     - db:db 

db: 
    image: postgres 
    environment: 
     POSTGRES_USER: odoo 
     POSTGRES_PASSWORD: odoo 

और जब मैं लांच मैं MemoryError:

[email protected]:~/odoo# docker-compose -f odoo.yml up 
Creating odoo_db_1 
Creating odoo_app_1 
Attaching to odoo_db_1, odoo_app_1 
db_1 | The files belonging to this database system will be owned by user "postgres". 
db_1 | This user must also own the server process. 
db_1 | 
db_1 | The database cluster will be initialized with locale "en_US.utf8". 
db_1 | The default database encoding has accordingly been set to "UTF8". 
db_1 | The default text search configuration will be set to "english". 
db_1 | 
db_1 | Data page checksums are disabled. 
db_1 | 
db_1 | fixing permissions on existing directory /var/lib/postgresql/data ... ok 
db_1 | creating subdirectories ... ok 
db_1 | selecting default max_connections ... 100 
db_1 | selecting default shared_buffers ... 128MB 
db_1 | selecting dynamic shared memory implementation ... posix 
db_1 | creating configuration files ... ok 
Traceback (most recent call last): 
    File "/usr/local/bin/docker-compose", line 9, in <module> 
    load_entry_point('docker-compose==1.9.0', 'console_scripts', 'docker-compose')() 
    File "/usr/local/lib/python2.7/dist-packages/compose/cli/main.py", line 65, in main 
    command() 
    File "/usr/local/lib/python2.7/dist-packages/compose/cli/main.py", line 117, in perform_command 
    handler(command, command_options) 
    File "/usr/local/lib/python2.7/dist-packages/compose/cli/main.py", line 862, in up 
    log_printer.run() 
    File "/usr/local/lib/python2.7/dist-packages/compose/cli/log_printer.py", line 87, in run 
    for line in consume_queue(queue, self.cascade_stop): 
    File "/usr/local/lib/python2.7/dist-packages/compose/cli/log_printer.py", line 229, in consume_queue 
    raise item.exc 
MemoryError 

मैं कारण गूगल की कोशिश की लेकिन नहीं कर सके ' कुछ भी नहीं मिला।

+3

स्मृति त्रुटि 'डोकर-compose', नहीं आपके आवेदन से आ रहा है की कोशिश कर सकते। शायद 512 एमबी रचना और पोस्टग्रेज़ चलाने के लिए पर्याप्त नहीं है। – johnharris85

+1

@ जॉनहरिस 85 सही लगता है। मैंने अपनी मशीन पर अपना आदेश चलाया है और यह ठीक काम करता है। मुझे लगता है कि आपको कम मेमोरी (जो मेरी राय में काम नहीं करेगा, 512 एमबी डीबी इंस्टेंस के लिए पर्याप्त मेमोरी की तरह नहीं है) –

+0

के साथ काम करने की कोशिश करने के लिए पोस्ट करने के लिए पर्याप्त मेमोरी देने की जरूरत है मेरी स्थानीय मशीन डॉकर-कंपोज़ पर कंटेनरों को भी ठीक बनाता है। लेकिन मैंने सोचा कि क्या सादा डॉकर कंटेनरों को एक-एक करके बना सकता है, क्यों डॉकर-कम्पोज़ कैंट? इसके अलावा, मैंने बाद में स्थापित एप्लिकेशन के साथ काम किया, कुछ मॉड्यूल जोड़े, इसलिए डीबी ठीक काम कर रहा है और मुझे कोई त्रुटि नहीं मिली है। सादे डॉकर द्वारा कंटेनर चलाने के बाद। –

उत्तर

5

वह आदेश जो बफर जेसन चला रहा है ताकि वह इसे सही ढंग से विभाजित कर सके। यह संभव है कि बफरिंग बहुत अधिक स्मृति का उपयोग कर रही है।

आप इस के बजाय की कोशिश कर सकते:

docker-compose -f odoo.yml up -d 

कि "अलग" चलेंगे। लॉग को देखने के लिए आप अभी भी docker-compose logs चलाने का प्रयास कर सकते हैं।

संबंधित मुद्दे