alpine輕量級基於busybox的發行版,特別適合基於docker的base images.linux
特色:docker
small、simple、secureshell
https://alpinelinux.org/ //官方發行版本bash
https://pkgs.alpinelinux.org/packages?name=&branch=edge //apk packageoop
在hub.docker.com官方倉庫中默認shell是sh,我仍是必須喜歡bashui
https://hub.docker.com/_/alpinespa
一、安裝bash相關pkgcode
二、修改root帳戶默認shellblog
三、修改登陸shell後的光標欄(PS1)ip
四、覆蓋默認進去shell(sh-->bash)
Dockerfile
FROM alpine:3.7 MAINTAINER mvpbang mvpbang@qq.com ###alpine+bash ADD .bashrc /root/ RUN set -x \ apk update \ && apk add --no-cache bash bash-doc bash-completion \ && sed -i 's/ash/bash/g' /etc/passwd \ && source /root/.bashrc CMD ["/bin/bash"]
.bashrc
export HISTTIMEFORMAT="%d/%m/%y %T " export PS1='\u@\h:\W \$ ' alias ll='ls -alF' alias ls='ls --color=auto' source /etc/profile.d/bash_completion.sh
docker build -t alpine:v1 .
[root@mvp-dd tmp]# docker run --rm -it alpine:v1 root@522065c46217:/ # root@522065c46217:/ # root@522065c46217:/ # ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 12: eth0@if13: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1500 qdisc noqueue state UP link/ether 02:42:ac:11:00:03 brd ff:ff:ff:ff:ff:ff inet 172.17.0.3/16 brd 172.17.255.255 scope global eth0 valid_lft forever preferred_lft forever
注意:因爲默認容器啓動執行的 /bin/bash,若是引用此鏡像未在啓動 -it,容器啓動完畢後自動退出(no process stop)