首页 > 其他分享 >Podman使用(Mac M1)

Podman使用(Mac M1)

时间:2024-02-02 14:37:36浏览次数:30  
标签:RUN podman app Podman Mac M1 install mirror com

1. 前言

弃用docker选择使用podman的理由:

  1. 使用虚拟机进行容器管理
  2. 不需要本机root权限
  3. 非守护进程
  4. podman命令与docker一致

2. 安装及配置

使用homebrew安装podman

brew install podman
brew install podman-compose
brew install podman-desktop

创建podman虚拟机:通过podman-desktop创建

命令行创建:podman machine init

通过podman machine info查看虚拟机状态,这里的虚拟机是由qemu模拟的

通过podman machine ssh进入虚拟机配置国内镜像源

vi /etc/containers/registries.conf

配置内容如下:

unqualified-search-registries = ["docker.io"]

[[registry]]
prefix = "docker.io"
location = "docker.io"

[[registry.mirror]]
location = "hub-mirror.c.163.com"

[[registry.mirror]]
location = "mirror.baidubce.com"

[[registry.mirror]]
location = "ustc-edu-cn.mirror.aliyuncs.com"

[[registry.mirror]]
location = "registry.docker-cn.com"

通过podman info | grep registries -A 25查看是否配置成功

3. 环境搭建

因为是用M1 Mac去使用,所以在环境搭建的时候需要看所需镜像是否支持arm架构。

这里搭一个之前出过的题,项目地址如下:

https://github.com/seizer-zyx/second-xupt-ctf.git

Dockerfile内容如下:

FROM ubuntu:20.04

RUN sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
RUN apt update
RUN apt install -y python3
RUN apt install -y python3-pip
RUN pip3 install flask -i https://pypi.tuna.tsinghua.edu.cn/simple
RUN mkdir /app

WORKDIR /app

COPY app /app
COPY flag /

ENTRYPOINT python3 /app/app.py

EXPOSE 80

去Dockerhub上看下,可知是支持的

通过podman build .构建镜像,构建完成,通过podman images查看

忘记给名称了,构建过程中通过-t参数给新构建的镜像予以名称podman build . -t flask

已经构建的镜像也可以予以名称podman tag c860 flask

接下来通过镜像启动容器podman run -it -d -P flask

容器启动成功,访问一下

标签:RUN,podman,app,Podman,Mac,M1,install,mirror,com
From: https://www.cnblogs.com/seizer/p/18003102

相关文章

  • CATIA|Windows——如何修改网卡的MAC地址?
    如何修改网卡的MAC地址?https://blog.csdn.net/weixin_44657888/article/details/117281332现在我们使用的板卡都是其唯一标识的,在计算机相关设备中最为常见的是MAC地址,在手机端最为常见的是SID。但有些时候,我们需要修改MAC地址,本文就来分享一些计算机如何修改网卡的mac地址。方......
  • UVA1109/Gym101175I Mummy Madness
    题意简述你初始在\((0,0)\),每个时刻你能向八连通格子移动或不移动。有\(n\)个怪物,怪物坐标已知,每个时刻怪物也能向八连通格子移动或不移动,而且会选择最终与你欧几里得距离最短的一种方案。求你在什么时刻会被怪物抓住(你和怪物在同一格子内),或报告无解。\(n\le10^5,|x_i|,|y......
  • 探究HMAC算法:消息认证与数据完整性的完美结合
    Hash-basedMessageAuthenticationCode(基于哈希的消息认证码,简称HMAC)算法作为一种广泛应用的消息认证码(MAC)算法,在现代信息安全领域起着至关重要的作用。本文将从算法原理、优缺点、实际应用等方面,全面介绍和解释HMAC算法。HMAC在线加密|一个覆盖广泛主题工具的高效在线平......
  • 【解决方案】Word启动报错:“文件未找到:xxx...Adobe...MacPDFM.framework...”
    ✨报错提示运行时错误“53”:文件末找到:/Library/ApplicationSupport/Adobe/MACPDFM/MacPDFM.framework/Versions/A/MacPDFM✨解决方案实际上是由于AdobeAcrobatProDC卸载残留导致该问题解决方案如下cd~/Library/Group\Containers/UBF8T346G9.Office/User\Con......
  • 网络流量分析 | AnaTraf 网络故障排除万用表教程更新: 如何抓取两个 MAC / IP 地址之
    AnaTraf致力于提供国产化网络流量分析、网络可视化、网络故障排除解决方案。AnaTraf网络万用表是一款实时的网络测量、流量分析工具,用于网络流量监控、识别网络性能瓶颈、快速排查网络问题。万用表的B站频道已经更新最新一期的教程。如何使用AnaTraf网络万用表抓取两个M......
  • C/C++ 中的宏/Macro
       宏(Macro)本质上就是代码片段,通过别名来使用。在编译前的预处理中,宏会被替换为真实所指代的代码片段,即下图中Preprocessor处理的部分。C/C++代码编译过程-图片来自 ntu.edu.sg根据用法的不同,分两种,Object-like和Function-like。前者用于Object对象,后者......
  • Mac 安装goland2023.3
    DataGrip/Goland相关工具链接:https://pan.baidu.com/s/1UTSusTKPPnIqxdKCAi1oKg提取码:9wej对应的激活码此处获取:https://docs.qq.com/doc/DZWFmak1WcVBhdENumac使用命令shxxx.sh执行如果原来有安装goland的话,需要先卸载干净访达中在资源库中清除......
  • mac下通过ssh脚本实现免账号密码连接运服务器
    mac脚本连接服务器编辑脚本viXXX.ssh#spawn启动一个子进程spawnsshroot@IP-pPORT#expect当出现password:字样时expect"password:"#send向子进程发送密码send"PASSWORD"#控制权交还给用户interact使用脚本expectXXX.ssh......
  • 同花顺官方MACD背离公式及tradding view的LAZYBAER的能量背离公式的分析
    同花顺MACD背离BACKGROUNDSTYLE(2);DIFF:EMA(CLOSE,SHORT)-EMA(CLOSE,LONG),COLORWHITE,PRECIS3;DEA:EMA(DIFF,M),COLORYELLOW,PRECIS3;MACD:(DIFF-DEA)*2,COLORSTICK,PRECIS3;GJ:=MAX(C,O);L4:=LLV(GJ,4);JL:=(HHV(DIFF,55)-LLV(DIFF,55))/5;GT:=DEA>REF(DEA,1)AND......
  • mac下git命令自动补全
    本文亲测可用。老版本macos方法:1、打开网页,https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash全选,复制内容。2、在~/.bash_profile文件(如果没有需要创建)中加入以下内容即可生效if\[-f~/.git-completion.bash\];then.~/.gi......