2015-09-17 4 views
5

पर डॉकर को अपग्रेड करना मैं अमेज़ॅन लिनक्स पर डॉकर को v1.8 में अपग्रेड करना चाहता हूं।अमेज़ॅन लिनक्स एएमआई

अपने आंतरिक यम पैकेज भंडार लिखने के समय: Docker version 1.7.1, build 786b29d/1.7.1 है।

बातें मैं पहले से ही

मैन्युअल की कोशिश की है Docker project's repo

Error: Package: docker-engine-1.8.2-1.el7.centos.x86_64 (dockerrepo) Requires: systemd-units

+0

आपको यहां भाग्य से बाहर सोचें। अमेज़ॅन लिनक्स को सेंटोस 5 से फोर्क किया गया था और पिछले कुछ सालों में इसमें काफी बदलाव आया है। और कुछ Centos7 संकुल संगत नहीं हो सकते हैं। तो आप अलग-अलग लिनक्स वितरण (Centos7, उबंटू, फेडोरा) का प्रयास कर सकते हैं या बस यूनिट अमेज़ॅन अपडेट की प्रतीक्षा कर सकते हैं। – Vor

+0

मैं अब स्रोत से डॉकर स्थापित करने पर जा रहा हूं। अगर यह विफल रहता है तो मैं अमेज़ॅन 'डॉकर' यम पैकेज खोलूंगा और इसे ट्विक कर दूंगा। – Hzmy

उत्तर

3

से स्थापित करने मैं अमेज़न लिनक्स docker पैकेज को स्थापित करने समाप्त हो गया और उसके बाद /usr/bin/docker से 1.8.2 संस्करण बाइनरी के साथ द्विआधारी अधिलेखन : https://docs.docker.com/installation/binaries/

बिल्कुल सुरुचिपूर्ण नहीं है - लेकिन सभी निर्भरताएं समान हैं, और क्योंकि मेरी एएमआई अपरिवर्तनीय है क्योंकि पैकेज वर्तमान छवि के शीर्ष पर अपग्रेड नहीं किया जाएगा।

4

यदि आप ईसी 2 कंटेनर सेवा का उपयोग कर रहे हैं, तो AWS ECS-optimized AMI (2015.09.बी) इस लेखन के रूप में डॉकर-1.7.1 चला रहा है। A post in the AWS forums कहता है "[एडब्ल्यूएस] परीक्षण 1.9 आरसी और इस महीने इसे वितरित करने की योजना है।"

service docker stop 
cp /usr/bin/docker /usr/bin/docker.old 
curl -o /usr/bin/docker https://get.docker.com/builds/Linux/x86_64/docker-1.9.0 
service docker start 

आप CloudFormation टेम्पलेट का उपयोग कर रहे हैं, यहाँ एक आदेश आप अपनी AWS::Cloudformation::Init में ड्रॉप कर सकते हैं::

Hzmy के जवाब पर विस्तार करने के लिए, यहाँ एक SSH सत्र में 1.9.0 के लिए डोकर अपग्रेड करने का तरीका है

... 
"commands": { 
    ..., 
    "03_upgrade_docker_for_log_driver_support": { 
     "command": { 
      "Fn::Join": [ 
       "", 
       [ 
        "#!/bin/bash -xe\n", 
        "service docker stop\n", 
        "cp /usr/bin/docker /usr/bin/docker.old\n", 
        "curl -o /usr/bin/docker https://get.docker.com/builds/Linux/x86_64/docker-1.8.3\n", 
        "service docker start\n" 
       ] 
      ] 
     } 
    } 
    ... 
} 
... 

शायद सबसे साफ नहीं है, लेकिन ऐसा लगता है कि यह मेरे लिए काम करता है।

+0

yup! जब तक डॉकर अपनी इनिट स्क्रिप्ट के साथ पागल नहीं बदलता है - यह सब अच्छा होना चाहिए! – Hzmy

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