内容简介:我们在进行URLOS应用开发时,经常会用到一些基础系统镜像,如:ubuntu、CentOS、Debian等,我们可以通过docker pull命令直接拉取官方镜像。以上是从docker官方拉取的ubuntu18.04镜像,我们可以基于此镜像制作相关的应用,比如LNP网站环境、LAP网站环境、Nodejs环境等等。简单理解,就是说几乎所有的docker应用都是在这些镜像上层层打包后得到的,应用的最终体积也许有几百M甚至上G,我们如何为应用瘦身以减少对磁盘的消耗呢?docker官方为我们打造了
我们在进行URLOS应用开发时,经常会用到一些基础系统镜像,如:ubuntu、CentOS、Debian等,我们可以通过docker pull命令直接拉取官方镜像。
root@ubuntu:~# docker pull ubuntu:18.04 18.04: Pulling from library/ubuntu 898c46f3b1a1: Already exists 63366dfa0a50: Already exists 041d4cd74a92: Already exists 6e1bee0f8701: Already exists Digest: sha256:017eef0b616011647b269b5c65826e2e2ebddbe5d1f8c1e56b3599fb14fabec8 Status: Downloaded newer image for ubuntu:18.04 root@master-node:~# docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu 18.04 94e814e2efa8 6 weeks ago 88.9MB root@ubuntu:~#
以上是从 docker 官方拉取的ubuntu18.04镜像,我们可以基于此镜像制作相关的应用,比如LNP网站环境、LAP网站环境、Nodejs环境等等。简单理解,就是说几乎所有的docker应用都是在这些镜像上层层打包后得到的,应用的最终体积也许有几百M甚至上G,我们如何为应用瘦身以减少对磁盘的消耗呢?
docker官方为我们打造了 Alpine 。
Alpine 的意思是“高山的”,比如 Alpine plants高山植物,Alpine skiing高山滑雪、the alpine resort阿尔卑斯山胜地,其实Alpine是一个操作系统。
Alpine 操作系统是一个面向安全的轻型 Linux 发行版。目前 Docker 官方已开始推荐使用 Alpine 替代之前的 Ubuntu 做为基础镜像环境。这样会带来多个好处。包括镜像下载速度加快,镜像安全性提高,主机之间的切换更方便,占用更少磁盘空间等。
Alpine的特点:
1、小巧:基于Musl libc和busybox,和busybox一样小巧,最小的Docker镜像只有5MB;
2、安全:面向安全的轻量发行版;
3、简单:提供APK包管理工具,软件的搜索、安装、删除、升级都非常方便。
4、适合容器使用:由于小巧、功能完备,非常适合作为容器的基础镜像。
在制作URLOS应用时,我们可以选择Alpine作为系统基础镜像,这样一来可有效降低应用的大小,方便其他用户下载安装。现在我们开始使用Alpine(如果你的系统中没有安装docker,建议先安装URLOS,因为它自带了docker)。
docker下运行Alpine
使用 docker pull
命令拉取Alpine镜像
root@ubuntu:~# docker pull alpine Using default tag: latest latest: Pulling from library/alpine bdf0201b3a05: Pull complete Digest: sha256:28ef97b8686a0b5399129e9b763d5b7e5ff03576aa5580d6f4182a49c5fe1913 Status: Downloaded newer image for alpine:latest root@ubuntu:~#
使用 docker images
命令查看镜像
root@ubuntu:~# docker images REPOSITORY TAG IMAGE ID CREATED SIZE alpine latest cdf98d1859c1 2 weeks ago 5.53MB ubuntu 18.04 94e814e2efa8 6 weeks ago 88.9MB root@ubuntu:~#
可以看到alpine镜像只有5.53MB,而ubuntu镜像则有88.9MB,Alpine的体积优势非常明显。
下面运行镜像
root@ubuntu:~# docker run -it --name myalpine alpine / #
Alpine的基本配置
1、网络相关配置
主机名文件
/etc/hostname
使用新设置的主机名立刻生效,执行如下命令:
hostname -F /etc/hostname
主机IP和域名映射文件
/etc/hosts
文件内容为:
127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters 172.17.0.2 a9efe865a8e6 192.168.43.121 www.urlos.com
DNS 服务器配置文件
/etc/resolv.conf
文件内容为:
#neeanew Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 192.168.43.1
网卡配置文件
/etc/network/interfaces
文件内容为:
auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 192.168.43.121 netmask 255.255.255.0 gateway 192.168.43.1
修改完相关配置以后,重新启动网络服务:
/etc/init.d/networking restart
2、更新国内源
Alpine的源文件为:
/etc/apk/repositories
默认的源地址为: http://dl-cdn.alpinelinux.org/
可以编辑源文件 /etc/apk/repositories
采用国内阿里云的源,文件内容为:
https://mirrors.aliyun.com/al...
https://mirrors.aliyun.com/al...
如果采用中国科技大学的源,文件内容为:
https://mirrors.ustc.edu.cn/a...
https://mirrors.ustc.edu.cn/a...
软件包管理工具apk的基本使用
alpine 提供了非常好用的apk软件包管理工具,
可以方便地安装、删除、更新软件。
查询相关的软件包
命令: apk search
,如查询vim软件包:
/ # apk search vim neovim-doc-0.2.0-r0 faenza-icon-theme-vim-1.3.1-r4 docker-vim-17.05.0-r0 vim-doc-8.0.0595-r0 py-jinja2-vim-2.9.6-r0 vimdiff-8.0.0595-r0 asciidoc-vim-8.6.9-r2 neovim-lang-0.2.0-r0 vim-8.0.0595-r0 neovim-0.2.0-r0 nginx-vim-1.12.2-r2 msmtp-vim-1.6.6-r1 protobuf-vim-3.1.0-r1 gst-plugins-base1-1.10.4-r1 mercurial-vim-4.5.2-r0 / #
安装软件包
命令: apk add
,如安装vim软件包:
/ # apk add vim (1/5) Installing lua5.2-libs (5.2.4-r2) (2/5) Installing ncurses-terminfo-base (6.0_p20171125-r1) (3/5) Installing ncurses-terminfo (6.0_p20171125-r1) (4/5) Installing ncurses-libs (6.0_p20171125-r1) (5/5) Installing vim (8.0.0595-r0) Executing busybox-1.29.3-r10.trigger OK: 39 MiB in 19 packages / #
卸载软件
命令: apk del
,如卸载vim软件:
/ # apk del vim (1/5) Purging vim (8.0.0595-r0) (2/5) Purging lua5.2-libs (5.2.4-r2) (3/5) Purging ncurses-libs (6.0_p20171125-r1) (4/5) Purging ncurses-terminfo (6.0_p20171125-r1) (5/5) Purging ncurses-terminfo-base (6.0_p20171125-r1) Executing busybox-1.29.3-r10.trigger OK: 6 MiB in 14 packages / #
获取更多apk包管理的命令参数
命令: apk --help
以上是Alpine最基本的使用方法,更多URLOS开发教程与docker容器教程请访问 URLOS官网 获取。
URLOS官网: https://www.urlos.com/
URLOS安装方法: https://www.urlos.com/center-...
URLOS开发交流QQ群:695164700,147882180
URLOS微信公众号:
以上所述就是小编给大家介绍的《URLOS应用开发基础课——Docker基础镜像Alpine入门教程》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- webpack 3 零基础入门教程 #1 - 介绍
- Elasticsearch 零基础到入门新手教程
- iOS汇编入门教程(一)ARM64汇编基础
- iOS 汇编入门教程(一):ARM64 汇编基础
- 0612 - 我入门 Python 后总结的基础教程
- Go 语言基础入门系列教程 —— 预热篇
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
树莓派学习指南
[英]Peter Membrey、[澳]David Hows / 张志博、孙峻文 / 人民邮电出版社 / 2014-4 / 49.00元
树莓派(Raspberry Pi)是一款基于Linux系统的、只有一张信用卡大小的卡片式计算机。由于功能强大、性能出色、价格便宜等特点,树莓派得到了计算机硬件爱好者以及教育界的欢迎,风靡一时。 《树莓派学习指南(基于Linux)》是学习在树莓派上基于Linux进行开发的一本实践指南。全书共3个部分11章,第一部分是前两章,讲述如何设置和运行图形用户界面(GUI)。第二部分是第3章到第7章,讲......一起来看看 《树莓派学习指南》 这本书的介绍吧!
MD5 加密
MD5 加密工具
RGB CMYK 转换工具
RGB CMYK 互转工具