開発環境をvscodeに移行してdockerに接続する

dockercomposeを使用する

ファイルpy36cpp7.yamlを作成します

version: '3'
services:
  py36cpp7:
    image: "registry.cn-hangzhou.aliyuncs.com/mkmk/centos:py36cpp7gdb"
    ports:
        - "30000:30000"
        - "30001:30001"
        - "30002:30002"
        - "30003:30003"
        - "30004:30004"
        - "30005:30005"
        - "30006:30006"
        - "30007:30007"
        - "30008:30008"
        - "30009:30009"
        - "30010:30010"
        - "30011:30011"
        - "30012:30012"
    restart: always
    entrypoint: "init"

dockercomposeenableサービス

テストサービスのフォアグラウンド操作

docker-compose  -f C:\Users\73444\Desktop\dockercompose\py36cpp7.yaml up

バックグラウンドプロセス

docker-compose  -f C:\Users\73444\Desktop\dockercompose\py36cpp7.yaml up  -d

誰がそれを使用するかを知っている、非常に使いやすい

ミラーアドレス 含まれているツール
Registry.cn-hangzhou.aliyuncs.com/mkmk/centos:py36cpp
  1. Gdbデバッグファイルはホームディレクトリで構成されます
  2. python36
  3. python27
  4. gcc73
  5. gcc48
  6. g ++
  7. ギット
  8. vscode c lint
  9. vscode python lint

    gccをアップグレードします。元のgccには4.8が付属しています。

    /usr/include/c++/4.8.2/bits/c++0x_warning.h:32:2:エラー:#errorこのファイルには、ISO C ++ 2011標準のコンパイラとライブラリのサポートが必要です。このサポートは現在実験段階であり、-std = c ++ 11または-std = gnu ++ 11コンパイラオプションを使用して有効にする必要があります。
    #errorこのファイルには、\のコンパイラとライブラリのサポートが必要です。

    そこで、gccを7にアップグレードすることにしました

    yum install centos-release-scl-rh centos-release-scl -y
    yum  update
    
    #选择自己喜欢(需要)的版本
    yum install devtoolset-{
        
        x}-gcc devtoolset-{
        
        x}-gcc-c++   
    source /opt/rh/devtoolset-{
        
        x}/enable
    
    yum install devtoolset-7-gcc devtoolset-7-gcc-c++   -y
    # 激活一次
    #source /opt/rh/devtoolset-7/enable
    #source /opt/rh/devtoolset-7-gcc-c++/enable
    
    # 永久激活
    mv  /usr/bin/gcc  /usr/bin/gcc4
    mv  /usr/bin/g++  /usr/bin/g++4
    ln -s /opt/rh/devtoolset-7/root/bin/gcc /usr/bin/gcc 
    ln -s /opt/rh/devtoolset-7/root/bin/g++ /usr/bin/g++
    
    更新之后就不会继续 报错提示啦
    

    vscode開発イメージをクラウドにパッケージ化する

    まずセントスミラーを引く

     docker pull registry.cn-hangzhou.aliyuncs.com/mkmk/centos:python366
    

    このドッキングウィンドウを設定し
    、SSHパスワードを
    lmk19980312
    python366

    これは完全な画像ではありません。完全な画像はcentos:py36cpp7v1です。

    c ++およびpython用の開発コンテナを構成します

    dokcerをプルした後、vscodeにリモートコンテナとdockerプラグインをインストールします。コンテナで開発を行います。ホストネットワークを使用してみます。このようにして、すべてのコードがコンテナに組み込まれますが、Webサービスをマッピングできます。ホストに移動して、効果を直接表示します

    プロキシはvscodeで設定できます

    ホストのlanでホストアクセスに同意することを忘れないでください

    python c ++コードフォーマットツールは、このコンテナでデフォルトで構成されています

    また、yumのpython2とpython3の間のいくつかの競合が解決され、ミラーソースも中国に変更されました。これを使用するときは、プロキシを自分のLANのプロキシに変更することを忘れないでください。

    centosコンテナがバックグラウンドで実行されているときにinitを使用してみてください

    docker pull  registry.cn-hangzhou.aliyuncs.com/mkmk/centos:py36cpp  
    
    // 新增版本 更新了 vscode gdb 调试的配置
    docker pull   registry.cn-hangzhou.aliyuncs.com/mkmk/centos:py36cpp7gdb  
    
    //新增版本 更新了 gcc 7 g++ 7
    docker pull   registry.cn-hangzhou.aliyuncs.com/mkmk/centos:py36cpp7v1  
    
    //新更新了一个 v2 版本,增加了语法智能提示的功能
    docker pull  registry.cn-hangzhou.aliyuncs.com/mkmk/centos:py36cppv2
    
     docker run -d  --restart=always  --privileged=true  --name py36cpp7  registry.cn-hangzhou.aliyuncs.com/mkmk/centos:py36cpp7gdb    init
    
    网络映射配置
    --net host  即可
    

    自宅で開発を試みてください、これは空のディレクトリです

    最初に一般的な国内ミラーソースを変更します

    省略

    pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
    
    

    vscodeの一般的な構成

    {
        
        
        "files.eol": "\n",
        "remote.extensionKind": {
        
        
            "ms-azuretools.vscode-docker": "workspace"
        },
        "editor.tabSize": 2,
        "editor.formatOnSave": true,
        "http.proxy": "http://192.168.1.8:7890",
        "files.autoSave": "afterDelay",
        "[cpp]": {
        
        
            "editor.defaultFormatter": "ms-vscode.cpptools",
            "editor.quickSuggestions": true,
        },
        "[c]": {
        
        
            "editor.defaultFormatter": "ms-vscode.cpptools",
            "editor.quickSuggestions": true,
        },
        "C_Cpp.clang_format_sortIncludes": true,
        "C_Cpp.intelliSenseEngineFallback": "Enabled",
      
      "html.suggest.html5": true,
      "files.autoSave": "afterDelay",
      "go.useLanguageServer": true,
      "open-in-browser.default": "chrome",
      "view-in-browser.customBrowser": "chrome",
      "typescript.updateImportsOnFileMove.enabled": "always",
      "window.zoomLevel": 0,
      "editor.fontSize": 14,
      "workbench.editor.enablePreview": true, //预览模式关闭
      "editor.formatOnSave": true, // #每次保存的时候自动格式化
      // 自动修复
      "editor.codeActionsOnSave": {
        
        
        "source.fixAll.eslint": true,
      },
      "eslint.enable": true, //是否开启vscode的eslint
      // 配置 ESLint 检查的文件类型
      "eslint.validate": [
        "javascript",
        "vue",
        "html"
      ],
    }
    

    gitを構成する

    yum install git 
    

    c c ++を構成する

    Centosには、c ++およびpython3をインストールするためのgcc485が付属しています。

    yum install gcc-c++
    

    goを構成する

    価値がない

    在这里插入代码片
    

    npmを構成する

    価値がない

    在这里插入代码片
    

    おすすめ

    転載: blog.csdn.net/qq_43373608/article/details/107676242