Na ovoj stranici

Koristite razvojne kontejnere

Koristite razvojne kontejnere (dev container) za definiranje i konfiguriranje dosljednog razvojnog okruženja za vaš projekt među programerima i u automatiziranim sustavima za izgradnju ili testiranje.

Dev kontejnere možete pokretati lokalno ili na daljinu u oblaku za pokretanje aplikacija, za odvajanje alata, biblioteka ili okruženja za izvršavanje koje su vam potrebni pri radu s bazom koda ili za kontinuiranu integraciju i testiranje.

Okruženje razvojnog spremnika može se razlikovati od produkcijskog okruženja jer obično uključuje alate i uslužne programe potrebne tijekom razvoja koji nisu potrebni za konačno postavljanje.

Za potpunu specifikaciju i format datoteke devcontainer.json pogledajte dokumentaciju za Development Containers.

Napomena: Omogućite dodatak Development Container Support da biste ga koristili.

Konfigurirajte razvojne kontejnere

Za konfiguriranje razvojnog spremnika za Qt Creator:

  1. Stvorite datoteku devcontainer.json u direktoriju projekta.
  2. Dodajte odjeljak qt-creator ispod customizations u datoteku devcontainer.json.
  3. Koristite opcije prilagodbe opisane u ovoj temi za prilagodbu razvojnog spremnika.

Opcije prilagodbe za razvojne kontejnere

Sljedeća tablica prikazuje dostupne opcije za prilagodbu Qt Creator u datoteci devcontainer.json.

SvojstvoTipOpis
auto-detect-kitsbooleanPostavite na true kako biste pokušali automatski otkriti komplet u razvojnom spremniku.
run-processes-in-terminalbooleanPostavite na true kako biste pokrenuli neke od procesa postavljanja razvojnog kontejnera u prozoru terminala. Trenutno se koristi samo za docker build.
copy-cmd-bridgebooleanPostavite na true da biste kopirali Command Bridge Helper, uslugu za komunikaciju s udaljenim uređajima, u razvojni spremnik umjesto pokušaja njegova montiranja. Ovo je korisno ako razvojni spremnik ne može montirati datotečni sustav domaćina.
mount-libexecbooleanPostavite na true kako biste montirali direktorij libexec u razvojni spremnik. Ovo se koristi za Command Bridge Helper.
libexec-mount-pointstringNavedite točku montiranja za direktorij libexec u razvojnom spremniku. Ovo se koristi za Command Bridge Helper.
kitsniz objekataNavedite prilagođene komplete koji će se koristiti u razvojnom spremniku.

Konfiguracija za tipični lokalni razvoj

Sljedeći primjer datoteke devcontainer.json pokazuje kako konfigurirati razvojni spremnik za tipičan lokalni tijek razvoja. Omogućuje automatsko otkrivanje kompleta, montira direktorij libexec u spremnik i određuje točku montaže.

Ova je postavka korisna kada želite da Qt Creator automatski pronađe dostupne build kitove i osigura da su potrebni pomoćni alati iz direktorija libexec dostupni unutar kontejnera.

{
    "customizations": {
        "qt-creator": {
            "device": {
                "auto-detect-kits": true,
                "run-processes-in-terminal": false,
                "copy-cmd-bridge": false,
                "mount-libexec": true,
                "libexec-mount-point": "/devcontainer/libexec"
            }
        }
    }
}

Konfiguracija za prilagođene komplete i alatne lance

Sljedeći primjer konfiguracijske datoteke devcontainer.json pokazuje kako konfigurirati razvojni spremnik kada trebate koristiti određenu verziju Qt-a, kompajler ili alatni lanac unutar spremnika. To je korisno za unakrsno kompajliranje, podršku više konfiguracija izgradnje ili osiguravanje dosljednog razvojnog okruženja među timovima.

Ova konfiguracijska datoteka onemogućuje automatsko otkrivanje kit-a i umjesto toga definira prilagođeni kit pomoću svojstva kits. Kit specificira verziju Qt-a, putanje do kompajlera, CMake binarnu datoteku i generator te otkladač koji će Qt Creator koristiti unutar razvojnog spremnika.

Konfiguracijska datoteka također koristi neobavezno svojstvo cmake.variables za prosljeđivanje proizvoljnih CMake varijabli kada Qt Creator konfigurira projekt. Svaki ključ je naziv CMake varijable, a vrijednost može biti:

  • Obični niz znakova
  • Niz nizova (spojenih pomoću ; u jednu vrijednost CMake liste)
  • Objekt s poljem value i opcionalnim poljem type (BOOL, STRING, FILEPATH, PATH, STATIC ili INTERNAL). Tip se dodaje na CMake naredbeni redak kao -DVAR_NAME:TYPE=value.
{
    "customizations": {
        "qt-creator": {
            "auto-detect-kits": false,
            "kits": [
                {
                    "name": "My DevContainer Kit",
                    "qt": "/6.7.0/gcc_64/bin/qmake6",
                    "compiler": {
                        "Cxx": "/usr/bin/c++",
                        "C": "/usr/bin/gcc"
                    },
                    "cmake": {
                        "binary": "/usr/bin/cmake",
                        "generator": "Unix Makefiles",
                        "variables": {
                            "CMAKE_BUILD_TYPE": "Release",
                            "CMAKE_PREFIX_PATH": ["/opt/qt", "/usr/local"],
                            "BUILD_TESTING": {
                                "type": "BOOL",
                                "value": "OFF"
                            }
                        }
                    },
                    "debugger": "/usr/bin/lldb"
                }
            ]
        }
    }
}

Vidi također Omogući i onemogući dodatke i Kako: razvijati za Docker.

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.