8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

相当于 vmImage: ubuntu 的 Ubuntu Docker 镜像

prabhakar 2月前

102 0

我正在尝试在 Azure 管道上的 ubuntu 容器作业上构建 Debian 包。这是我的设置:池:“AWSLinux”容器:映像:ubuntu:20.04但看起来 ubuntu:20.04 docker 映像确实……

我正在尝试在 Azure 管道上的 ubuntu 容器作业上构建 Debian 包。

这是我的设置:

pool: 'AWSLinux'

container: 
  image: ubuntu:20.04

但看起来 ubuntu:20.04 docker 镜像没有安装一些必需的工具。(SUDO,SVN,dpkg-architecture)

------Update and install packages------
/__w/_temp/40c7e2e3-ed1a-4d0f-a8da-5f7bf062cb90.sh: line 6: sudo: command not found
/__w/_temp/40c7e2e3-ed1a-4d0f-a8da-5f7bf062cb90.sh: line 7: sudo: command not found
/__w/_temp/40c7e2e3-ed1a-4d0f-a8da-5f7bf062cb90.sh: line 8: sudo: command not found
------Initialize build environment------
/__w/_temp/40c7e2e3-ed1a-4d0f-a8da-5f7bf062cb90.sh: line 11: sudo: command not found
------Build DEBIAN------
/__w/16/DEBIAN/scripts/build.includes: line 78: dpkg-architecture: command not found
../../../scripts/build_template.includes: line 118: svnversion: command not found

但是在 Ubuntu vmImage 上构建时我没有遇到如下所示的缺少工具的问题:

pool:
  vmImage: ubuntu-20.04  

所以我的计划是将 Ubuntu Docker 镜像拉到与 vmImage:ubuntu 等效的某个地方,然后推送到我的私人 Harbor 注册表以在容器规范中引用它:

container:
  image: registry:ubuntu2004
  endpoint: private_harbor_connection

问题是哪里可以找到这个相当于 vmImage: ubuntu 的 Ubuntu Docker 镜像?有没有更好的解决方案?谢谢。

/////////////////////////////////////////////////////////// //////////////////////////////////

这是更新后的 yaml 文件:

trigger:
- master

pool: 'AWSLinux'

container: 
  image: ubuntu:20.04
  options: "--name sample -v /usr/bin/docker:/tmp/docker:ro"
  
steps:
- checkout: self
  lfs: true
  path: HVD
  clean: true

- script: |
    /tmp/docker exec -t -u root sample mv /etc/sudoers /etc/sudoers.bak
    /tmp/docker exec -t -u root sample apt-get -qq update
    /tmp/docker exec -t -u root sample apt-get -qq install sudo
    /tmp/docker exec -t -u root sample apt-get -qq install subversion
    /tmp/docker exec -t -u root sample apt-get -qq install dpkg-dev
    /tmp/docker exec -t -u root sample mv /etc/sudoers.bak /etc/sudoers

- script: |

    cd HVD/Sources/Proprietary/hvd-client/
  
    echo ------Update and install packages------
    sudo apt update -y
    sudo apt upgrade -y
    sudo apt install -y build-essential devscripts equivs git git-lfs

    echo ------Initialize build environment------
    sudo ./init-dev-hvd

    echo ------Build HVD------
    ./build.tp

    echo ------Build finshed------

但是第二个脚本在运行“更新和安装包”部分时卡在以下屏幕输出。

Setting up tzdata (2024a-0ubuntu0.20.04) ...
debconf: unable to initialize frontend: Dialog
debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.)
debconf: falling back to frontend: Readline
Configuring tzdata
------------------

Please select the geographic area in which you live. Subsequent configuration
questions will narrow this down by presenting a list of cities, representing
the time zones in which they are located.

  1. Africa      4. Australia  7. Atlantic  10. Pacific  13. Etc
  2. America     5. Arctic     8. Europe    11. SystemV
  3. Antarctica  6. Asia       9. Indian    12. US
Geographic area: 
##[error]The operation was canceled.

/////////////////////////////////////////////////////////// ///////////////////

这是 6 月 5 日更新的 yaml。

trigger:
- master

pool: 'AWSLinux'

container: 
  image: ubuntu:20.04
  options: "--name sample -v /usr/bin/docker:/tmp/docker:ro"
  
steps:
- checkout: self
  lfs: true
  path: HVD
  clean: true

- script: |
    /tmp/docker exec -t -u root sample mv /etc/sudoers /etc/sudoers.bak
    /tmp/docker exec -t -u root sample apt-get -qq update
    /tmp/docker exec -t -u root sample apt-get -qq install sudo
    /tmp/docker exec -t -u root sample apt-get -qq install subversion
    /tmp/docker exec -t -u root sample apt-get -qq install dpkg-dev
    /tmp/docker exec -t -u root sample mv /etc/sudoers.bak /etc/sudoers

- script: |

    cd HVD/Sources/Proprietary/hvd-client/
  
    echo ------Update and install packages------
    sudo apt update -y
    sudo apt upgrade -y
    sudo DEBIAN_FRONTEND=noninteractive apt install -y build-essential devscripts equivs git git-lfs

    echo ------Initialize build environment------
    sudo ./init-dev-hvd

    echo ------Build HVD------
    ./build.tp

    echo ------Build finshed------

脚本在步骤:\'./build.tp\' 失败,并出现以下错误:

------Build HVD------
No packages directory, rebuilding...
I: Cleaning hvd-client
dh clean
All build files have been removed.
I: Checking external version for hvd-client
I: This is not an external
I: Copying hvd-client
I: Checking source requirements for hvd-client
I: Checking build requirements for hvd-client
dpkg-checkbuilddeps: error: Unmet build dependencies: lbzip2 cmake qt5-default libssl-dev libpcsclite-dev libpng-dev libpulse-dev libxrandr-dev libxkbfile-dev libxcursor-dev libxt-dev chrpath python3-pip python3-venv libpython3-dev libxcb-xinerama0 libfreetype6-dev libxft-dev libqt5x11extras5-dev libxinerama-dev libudev-dev upx wmctrl libxmu-headers libxmu-dev libglib2.0-dev freerdp2-dev liblz4-tool cython3 clang-tidy-11 libuvc-dev libcups2-dev qtmultimedia5-dev qtpositioning5-dev libxext-dev libxcomposite-dev libxdamage-dev libxfixes-dev libxtst-dev libavcodec-dev libavutil-dev libicu-dev libgbm-dev libdrm-dev libjson-c-dev libopencv-dev libcurl4-openssl-dev
帖子版权声明 1、本帖标题:相当于 vmImage: ubuntu 的 Ubuntu Docker 镜像
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由prabhakar在本站《ubuntu》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 选项 1 :您可以使用 UI Canvas,将其设置为 World Space,并在您的层次结构和场景中正确定位它。

    在这种情况下,您可以使用与 UI 相同的精灵。

    选项 2 :您可以使用 3D Quad 并在层次结构和场景中正确定位它。

    在这种情况下,您还需要正确设置代表精灵的纹理和材质。


    OnTriggerEnter 看起来很好,你 PickUp 看起来很好,你 Add 看起来很好。

    ListItems 看起来很奇怪:

    • p6

    • p7

    • p8

      for (var i = 0; i < 3; i++){    // Or you can just use List<GameObject> ghostVisuals instead of ghost1, ghost2 and ghost3    GameObject currentGhost = null;    if (i == 0)        currentGhost = ghost1;    else if (i == 1)        currentGhost = ghost2;    else if (i == 2)      currentGhost = ghost3;    else        throw new InvalidOperationException();    if (Ghosts.Count > i) {        currentGhost.SetActive(true); // We have a ghost, so enable the GameObject        // Here you access the data you need for the `currentGhost`        // e.g. if you have added a child GhostIcon to it:        var ghostIcon = currentGhost.transform.Find("GhostIcon").GetComponent<Image>();        ghostIcon.sprite = Ghosts[i].icon;    }    else {        currentGhost.SetActive(false); // No more ghosts, disable the game object    }}

      p9

返回
作者最近主题: