加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

再会 Docker,是时辰拥抱下一代容器器材了

发布时间:2019-09-28 04:00:25 所属栏目:建站 来源:iMike
导读:什么是 Linux 容器? Linux 容器是由 Linux 内核所提供的具有特定断绝成果的历程,Linux 容器技能可以或许让你对应用及其整个运行时情形(包罗所有所需文件)一路举办打包或断绝。从而让你在差异情形(如开拓、测试和出产等情形)之间轻松迁徙应用的同时,还可保存

查察一个运行容器中的历程资源行使环境

  1. $ sudo podman top <container_id> 
  2.   UID   PID  PPID  C STIME TTY          TIME CMD 
  3.     0 31873 31863  0 09:21 ?        00:00:00 nginx: master process nginx -g daemon off; 
  4.   101 31889 31873  0 09:21 ?        00:00:00 nginx: worker process 

遏制一个运行中的容器

  1. $ sudo podman stop --latest 

删除一个容器

  1. $ sudo podman rm --latest 

以上这些特征根基上都和 Docker 一样,Podman 除了兼容这些特征外,还支持了一些新的特征。

给容器配置一个搜查点

  1. $ sudo podman container checkpoint <container_id> 

必要 CRIU 3.11 以上版本支持,CRIU 项目地点:https://criu.org/

按照搜查点位置规复容器

  1. $ sudo podman container restore <container_id> 

迁徙容器

Podman 支持将容器从一台呆板迁徙到另一台呆板。

起首,在源呆板上对容器配置搜查点,并将容器打包到指定位置。

  1. $ sudo podman container checkpoint <container_id> -e /tmp/checkpoint.tar.gz 
  2. $ scp /tmp/checkpoint.tar.gz <destination_system>:/tmp 

其次,在方针呆板上行使源呆板上传输过来的打包文件对容器举办规复。

  1. $ sudo podman container restore -i /tmp/checkpoint.tar.gz 

设置别名

假如风俗了行使 Docker 呼吁,可以直接给 Podman 设置一个体名来实现无缝转移。你只必要在 .bashrc 下插手以下行内容即可:

  1. $ echo "alias docker=podman" >> .bashrc 
  2. $ source .bashrc 

Podman 怎样实现开机重启容器

因为 Podman 不再行使保卫历程打点处事,以是不能通过保卫历程去实现自动重启容器的成果。那假如要实现开机自动重启容器,又该怎样实现呢?

着实要领很简朴,此刻大大都体系都已经回收 Systemd 作为保卫历程打点器材。这里我们就可以行使 Systemd 来实现 Podman 开机重启容器,这里我们以启动一个 Nginx容器为例子。

起首,我们先运行一个 Nginx 容器。

  1. $ sudo podman run -t -d -p 80:80 --name nginx nginx 

然后,在成立一个 Systemd 处事设置文件。

  1. $ vim /etc/systemd/system/nginx_container.service 
  2.  
  3. [Unit] 
  4. Description=Podman Nginx Service 
  5. After=network.target 
  6. After=network-online.target 
  7.  
  8. [Service] 
  9. Type=simple 
  10. ExecStart=/usr/bin/podman start -a nginx 
  11. ExecStop=/usr/bin/podman stop -t 10 nginx 
  12. Restart=always 
  13.  
  14. [Install] 
  15. WantedBy=multi-user.target 

接下来,启用这个 Systemd 处事。

  1. $ sudo systemctl daemon-reload 
  2. $ sudo systemctl enable nginx_container.service 
  3. $ sudo systemctl start nginx_container.service 

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读