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 trebate 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 raspoređivanje.

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

Napomena: Da biste ga koristili,omogućite dodatak Development Container Support.

Konfigurirajte razvojne kontejnere

Za konfiguraciju razvojnog spremnika za Qt Creator:

  1. Stvorite devcontainer.json datoteku 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 spremnika u prozoru terminala. Trenutno se koristi samo za docker build.
copy-cmd-bridgebooleanPostavite na true kako biste kopirali Command Bridge Helper, servis 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 tijek rada lokalnog 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.