วิธีติดตั้ง Odoo ด้วย Docker และเพิ่มโมดูลภายนอก

ในบทความ ทีละขั้นตอนเพื่อตั้งค่า ERP และ CRM สำหรับ SME ของคุณ เราสอนวิธีเรียกใช้เครื่องเสมือนที่มีการติดตั้ง Odoo 8 ที่กำหนดค่าไว้ล่วงหน้าซึ่งทำให้เราเพลิดเพลินไปกับ ERP นี้ได้อย่างง่ายดายและรวดเร็วคราวนี้เราต้องการเข้าสู่โลกของ Docker และติดตั้ง Odoo โดยใช้เทคโนโลยีที่ยอดเยี่ยมนี้

โดยทั่วไปในบทช่วยสอนนี้คุณจะได้เรียนรู้วิธีการติดตั้ง Odoo กับนักเทียบท่าและเพิ่มโมดูลภายนอกที่จะช่วยให้คุณสามารถปรับปรุงและขยายฟังก์ชันการทำงานของ Odoo ได้ ต้องขอบคุณนักเทียบท่าคุณสามารถมี Odoo เวอร์ชันใดก็ได้บนคอมพิวเตอร์เครื่องเดียวกันและมีหลายอินสแตนซ์ที่ทำงานอยู่ซึ่งจะอำนวยความสะดวกในการพัฒนาและเริ่มต้นใช้งานได้ตลอดเวลาในทุกองค์กรและโดยเฉพาะอย่างยิ่งในทุกสภาพแวดล้อม

ขั้นตอนค่อนข้างง่าย แต่ฉันจะพยายามทำให้ละเอียดที่สุดขั้นตอนและขั้นตอนจะเน้นไปที่ distros ด้วย Ubuntu 16.04 แต่สามารถใช้กับ Linux distro ใด ๆ ได้อย่างง่ายดาย

ขั้นตอนในการติดตั้ง Docker และ Docker Compose

ติดตั้ง Docker

ในการติดตั้ง Docker ใน Ubuntu ให้เรียกใช้คำสั่งต่อไปนี้:

sudo apt-get install docker.io

เพิ่มผู้ใช้ของคุณในกลุ่ม Docker

เราต้องดำเนินการคำสั่งต่อไปนี้:

sudo gpasswd -a ${USER} docker

ติดตั้ง Docker-compose

วิธีที่ง่ายที่สุดในการติดตั้ง Docker-ompose คือการใช้ pip โดยให้รันคำสั่งต่อไปนี้:

pip install docker-compose

ติดตั้ง Docker-engine

ติดตั้ง docker-engine ด้วยคำสั่งต่อไปนี้:

sudo curl -sSL https://get.docker.com/ | sh

รีสตาร์ท Docker

เพื่อให้การเปลี่ยนแปลงทั้งหมดดำเนินไปอย่างถูกต้องสะดวกในการรีสตาร์ทนักเทียบท่าโดยใช้:

sudo service docker restart

การสร้างไฟล์ docker-compose.yml ของเรา

เมื่อเราติดตั้งนักเทียบท่าแล้วเราต้องสร้างไฟล์ นักเทียบท่า-compose.yml ในไดเร็กทอรีที่เราต้องการจะมีข้อมูลทั้งหมดที่จำเป็นในการปรับใช้บริการของเรากับ Odoo

nano docker-compose.yml

ไฟล์นี้จะประกอบด้วยสิ่งต่อไปนี้:

เวอร์ชัน: บริการ '2': odoo: image: odoo: 8 รีสตาร์ท: เสมอพอร์ต: - ลิงก์ "8069: 8069": - ไดรฟ์ข้อมูล db: - ./extra-addons:/mnt/extra-addons db: image: postgres: 9.4 รีสตาร์ท: สภาพแวดล้อมเสมอ: - POSTGRES_USER = odoo - POSTGRES_PASSWORD = odoo

ในไฟล์นี้เราสามารถทำการเปลี่ยนแปลงต่อไปนี้เพื่อปรับให้เข้ากับความต้องการของเรา:

  • image: odoo:8 : คุณสามารถแทนที่ odoo: 8 ด้วยเวอร์ชันที่คุณต้องการ odoo: 9, odoo: 10, odoo11 หรือเพียงแค่ odoo: ล่าสุดสำหรับเวอร์ชันล่าสุดที่มี
  • ports: - "8069:8069" : แทนที่พอร์ตแรกด้วยพอร์ตที่คุณต้องการซึ่งจะช่วยให้คุณมี odoo หลาย ๆ อินสแตนซ์ที่ทำงานในเวลาเดียวกันเช่นอาจมีลักษณะเช่นนี้ ports: - "8070:8069"ports: - "8071:8069" และอื่น ๆ
  • image: postgres:9.4 : คุณยังสามารถแทนที่ภาพ postgres ที่คุณต้องการใช้โดยเฉพาะเวอร์ชันนี้เหมาะกับฉันมากทีเดียว

โดยทั่วไปแล้วบรรทัดนี้ นักเทียบท่า-compose.yml เราเรียกใช้ชุดของคอนเทนเนอร์ที่เกี่ยวข้องกันเช่นคอนเทนเนอร์ของเวอร์ชัน odoo และคอนเทนเนอร์ postgres เช่นเดียวกันสำหรับคอนเทนเนอร์แรกที่เราระบุว่าจะฟังพอร์ต 8069 (และจะสามารถเข้าถึงที่เราระบุได้) และ นอกจากนี้ไดรฟ์ข้อมูลในเครื่องที่เรียกว่า add-addons จะถูกเมาท์ซึ่งจะเชื่อมโยงกับ / mnt / extra-addons ในคอนเทนเนอร์ odoo โดยอัตโนมัติ

ในที่สุดชื่อผู้ใช้และรหัสผ่านที่จะใช้สำหรับ postgres จะได้รับการอธิบายและถูกกำหนดว่าเมื่อคอมพิวเตอร์ของแขกรีสตาร์ทบริการนักเทียบท่าเครื่องจะรีสตาร์ทด้วยการรีสตาร์ท: พารามิเตอร์เสมอ

การตั้งค่าเริ่มต้นของ Odoo

เมื่อเราสร้างไฟล์ docker-compose.ymlเราต้องเริ่มต้นอินสแตนซ์ Odoo เพื่อทำสิ่งนี้จากเทอร์มินัลเราไปที่ไดเร็กทอรีที่ไฟล์ที่สร้างไว้ก่อนหน้านี้และดำเนินการ:

docker-compose up -d

การดาวน์โหลดคอนเทนเนอร์นักเทียบท่าที่จำเป็นจะเริ่มโดยอัตโนมัติฐานข้อมูลจะเริ่มขึ้นและเราจะสามารถเข้าถึงอินสแตนซ์ odoo ของเราได้จาก localhost:8069 หรือพอร์ตที่คุณระบุ เมื่อเข้าไปแล้วจะต้องสร้างฐานข้อมูลของเราซึ่งเราต้องเลือกอีเมลรหัสผ่านการเข้าถึงภาษาและภาษานอกเหนือจากการเลือกว่าเราต้องการนำเข้าข้อมูลทดสอบเพื่อประเมิน Odoo หรือไม่

เมื่อสร้างฐานข้อมูลแล้วเราสามารถเข้าถึง odoo และเริ่มใช้ประโยชน์จากมันได้

การเพิ่มโมดูลภายนอกให้กับ Odoo

El นักเทียบท่า-compose.yml ที่เราสร้างในขั้นตอนก่อนหน้านี้นอกเหนือจากการเพิ่ม odoo และ postgres อิมเมจที่จำเป็นแล้วยังสร้างไดเร็กทอรีของเราเพื่อให้สามารถเพิ่มโมดูลภายนอกให้กับอินสแตนซ์ของเราได้ สำหรับสิ่งนี้ก็เพียงพอแล้วที่เราจะคัดลอกโมดูลที่เข้ากันได้กับเวอร์ชันของ odoo ที่เราดำเนินการในไดเร็กทอรีดังกล่าวคุณสามารถเพิ่มโมดูลของคุณเองหรือดาวน์โหลดได้จาก แอป Odoo.

เมื่อเรามีโมดูลของเราในไดเร็กทอรี extra-addons (คลายซิป) ซึ่งอยู่ในไดเร็กทอรีที่เรามีไฟล์ นักเทียบท่า-compose.ymlเราดำเนินการต่อเพื่อให้สิทธิ์ที่สอดคล้องกันเพื่อให้นักเทียบท่าของเราสามารถอ่านได้ วิธีง่ายๆคืออยู่ในไดเร็กทอรีหลักของส่วนเสริมพิเศษที่เราดำเนินการคำสั่งต่อไปนี้จากเทอร์มินัล:

sudo chown -R lizard: lizard extra-addons / #replace lizard กับผู้ใช้ของคุณ sudo chmod -R 755 extra-addons /

ตอนนี้จากอินสแตนซ์ odoo ของเราเราต้องเปิดใช้งานโหมดนักพัฒนาซึ่งขึ้นอยู่กับรุ่นของ odoo ที่คุณมีสามารถทำได้ด้วยวิธีต่อไปนี้:

เปิดใช้งานโหมดนักพัฒนาใน Odoo 8

โหมดการพัฒนาใน Odoo 8 เปิดใช้งานจากโปรไฟล์ผู้ใช้สำหรับสิ่งนี้จากเมนูเข้าถึงหมวดหมู่ผู้ใช้ค้นหาผู้ดูแลระบบของคุณและในส่วนล่างขวาจะเปิดใช้งานคุณสมบัติ

โหมดนักพัฒนาใน odoo 8

เปิดใช้งานโหมดนักพัฒนาใน Odoo 9

ใน Odoo 9 ให้ไปที่ด้านขวาบนแล้วคลิกวันที่ที่อยู่ถัดจากรูปโปรไฟล์ของผู้ใช้จากนั้นไปที่ตัวเลือกเกี่ยวกับและในหน้าต่างที่เปิดขึ้นให้เลือก เปิดใช้งานโหมดนักพัฒนา

โหมดนักพัฒนาใน odoo 9

เปิดใช้งานโหมดนักพัฒนาใน Odoo 10 และ Odoo 11

ในการเปิดใช้งานโหมดนักพัฒนาใน Odoo 10 และ 11 เราต้องไปที่เมนูการตั้งค่าและคลิกที่ส่วนล่างขวา เปิดใช้งานโหมดนักพัฒนา.

โหมดนักพัฒนาใน odoo 10

โหมดนักพัฒนาใน odoo 11

สุดท้ายในเวอร์ชันใด ๆ เราต้องไปที่เมนูของโมดูลหรือแอพในเครื่องและคลิกที่ลิงค์เพื่ออัปเดตรายการโมดูลจากนั้นคุณสามารถติดตั้งโมดูลตามที่อธิบายไว้ในบทความเรื่อง วิธีติดตั้งโมดูลใน Odoo.

การติดตั้งแพ็คเกจในนักเทียบท่าของเรา

อาจเป็นกรณีที่โมดูลหรือยูทิลิตี้ใด ๆ ที่คุณต้องการรวมเข้ากับ odoo (หรือคุณสมบัติของ odoo เอง) ต้องการการติดตั้งแพ็คเกจภายนอกซึ่งสามารถทำได้ค่อนข้างง่ายในนักเทียบท่าด้วย docker exec ซึ่งเป็นยูทิลิตี้ที่ช่วยให้เราดำเนินการคำสั่งใน Docker container

สิ่งแรกที่เราต้องรู้คือชื่อของอินสแตนซ์นักเทียบท่าของเราซึ่งทำได้ด้วยคำสั่งต่อไปนี้:

docker ps

ในการติดตั้งแอปพลิเคชันเป็นรูทในนักเทียบท่าเราต้องดำเนินการคำสั่งต่อไปนี้เพื่อปรับให้เข้ากับความต้องการของคุณ:

docker exec -u root odoo9_odoo_1 pip install xlsxwriter

ที่ไหน docker exec -u root odoo9_odoo_1  บ่งชี้ว่าคำสั่งจะถูกดำเนินการในฐานะรูทในอินสแตนซ์ odoo9_odoo_1 และ pip install xlsxwriter เป็นคำสั่งที่คุณต้องการเรียกใช้

ในที่สุดฉันก็อยากจะแบ่งปันคำสั่งต่างๆที่จะเป็นประโยชน์เมื่อทำงานกับนักเทียบท่านักแต่งเพลง

# มันทำงานจากไดเร็กทอรีของอินสแตนซ์นักเทียบท่าและสำหรับนักเทียบท่า - เขียนที่กำลังเรียกใช้นักเทียบท่านักแต่งเพลงหยุด # มันทำงานจากไดเร็กทอรีของอินสแตนซ์นักเทียบท่าและเริ่มการเริ่มการทำงานของนักเทียบท่านักแต่งเพลง docker stop $ (docker ps -a -q) # Delete all docker container rm $ (docker ps -a -q) # Delete all docker images rmi $ (docker images -q)

ฉันหวังว่าบทช่วยสอนนี้จะถูกใจคุณในบทความต่อ ๆ ไปเราจะเริ่มเรียนรู้วิธีใช้ Odoo และกำหนดค่าใน SMEs ของเรา


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา

  1.   กิ dijo

    บทช่วยสอนที่ยอดเยี่ยม มาดูกันว่าฉันสามารถหาเวลานำไปปฏิบัติได้หรือไม่ ทั้ง Odoo และ Docker ดูน่าสนใจมาก ตอนนี้ฉันยุ่งอยู่กับการดูว่าฉันเรียนรู้บางอย่างเกี่ยวกับการขูดเว็บโดยใช้ rstudio และนักเทียบท่าซีลีเนียม-firefox หรือไม่ ซึ่งเป็นสิ่งที่ต้องสำรวจ DesdeLinux.

    1.    JSON dijo

      ซีลีเนียมไม่ได้มีไว้สำหรับการขูดสำหรับการบีบอัด เฉพาะการขูด alcaro XD เท่านั้นสำหรับการอ่านข้อมูล

      1.    Guille dijo

        ฉันกำลังพยายามเรียนรู้วิธีอ่านข้อมูลจากเว็บและใส่ลงในตารางที่มีโครงสร้างหรือตารางเพื่อจัดการในภายหลัง อ้างอิงจาก Wikipedia:
        การขูดเว็บเป็นเทคนิคที่ใช้โดยโปรแกรมซอฟต์แวร์เพื่อดึงข้อมูลจากเว็บไซต์ โดยปกติโปรแกรมเหล่านี้จะจำลองการนำทางของมนุษย์บนเวิลด์ไวด์เว็บโดยใช้โปรโตคอล HTTP ด้วยตนเองหรือโดยการฝังเบราว์เซอร์ในแอปพลิเคชัน
        Wrapper ในการขุดข้อมูลเป็นโปรแกรมที่แยกเนื้อหาของแหล่งข้อมูลเฉพาะและแปลเป็นรูปแบบเชิงสัมพันธ์ [1] หน้าเว็บจำนวนมากนำเสนอข้อมูลที่มีโครงสร้างเช่นไดเร็กทอรีโทรศัพท์แคตตาล็อกผลิตภัณฑ์ ฯลฯ จัดรูปแบบสำหรับการท่องเว็บของมนุษย์โดยใช้ภาษา HTML
        อาจเป็นกระดาษห่อหุ้มมากกว่าเนื่องจากเป็นข้อมูลที่มีโครงสร้างในตารางใช่ มันน่าสนใจอย่างมาก.

  2.   vistor dijo

    เป็นไปได้ไหมที่จะติดตั้งบน Raspberry pi ด้วย Ubuntu Mate

    1.    จิ้งจก dijo

      ถ้าเป็นไปได้เรามาดูกันว่าฉันสามารถทำแบบฝึกหัดในหัวข้อนี้ได้ด้วยเวลาเพียงเล็กน้อยหรือไม่

      1.    ระราน dijo

        มันจะดีมากฉันมี PI หลายตัวที่เก็บฝุ่น

        1.    จิ้งจก dijo

          และฉันต้องการหนึ่งสำหรับการทดสอบ🙁

  3.   ไม่ระบุชื่อ dijo

    ฉันจะดาวน์โหลดด้วยภาษาสเปนได้อย่างไร? ดังนั้นแอปพลิเคชันจึงเป็นภาษาสเปนและหากมีสำหรับ Windows?

    1.    จิ้งจก dijo

      เมื่อสร้างฐานข้อมูลคุณสามารถเลือกภาษาที่คุณต้องการได้หากใช้งานได้ใน Windows ด้วย (มีตัวติดตั้งจากหน้า odoo)

  4.   ผู้มีชัย dijo

    สวัสดีฉันกำลังพยายามติดตั้งบน Raspberry pi 3 และเรียกใช้สคริปต์ Docker:
    docker-compose ขึ้น -d

    ฉันได้รับข้อผิดพลาดต่อไปนี้:

    ข้อผิดพลาด: ไม่มีรายการที่ตรงกันสำหรับ linux / arm ในรายการรายการรายการ

    ขอบคุณ

  5.   พระเยซู dijo

    บทช่วยสอนดีมากขอบคุณและวิธีการติดตั้งอินสแตนซ์ที่เหลือยังไม่ชัดเจนสำหรับฉันคุณต้องใส่ไฟล์ docker-compose.yml ให้มากขึ้นขอบคุณ

  6.   Brayhan จารามิลโล dijo

    คุณช่วยฉันหาเส้นทางของส่วนเสริมได้ไหมฉันอยู่บนเครื่อง Mac หรือไม่ ขอบคุณมาก

  7.   กอนซาโล dijo

    การติดตั้งเวอร์ชันสำหรับองค์กรจะเป็นอย่างไร

  8.   Danilo dijo

    สวัสดีจะเป็นอย่างไรถ้าฉันต้องการอัปเดตโมดูลที่ฉันกำลังเขียนโปรแกรมจากเทอร์มินัล