Docker
安装Docker
卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc
使用存储库安装
在新主机上首次安装Docker Engine-Community之前,需要设置Docker存储库。之后,您可以从存储库安装和更新Docker。
设置存储库,更新apt包索引
sudo apt-get update
安装软件包以允许apt通过HTTPS使用存储库
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
添加Docker的官方GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
通过搜索指纹的后8个字符,验证您现在是否拥有带有指纹的密钥
sudo apt-key fingerprint 0EBFCD88
pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb) docker@docker.com
sub rsa4096 2017-02-22 [S]
使用以下命令来设置稳定的存储库
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
通过运行hello-world 映像来验证是否正确安装了Docker Engine-Community 。
sudo docker run hello-world
Docker国内镜像加速
创建或修改 /etc/docker/daemon.json 文件,修改为如下形式
{
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com"
]
}
-
Docker中国区官方镜像
https://registry.docker-cn.com
-
网易
http://hub-mirror.c.163.com
-
中国科技大学
https://docker.mirrors.ustc.edu.cn
-
阿里云:要注册
https://cr.console.aliyun.com/
图像使用
gitlab 源代码管理
sudo docker run --detach \
--hostname 192.168.2.11 \
--publish 443:443 --publish 8055:80 --publish 10025:22 \
--name gitlab \
--restart always \
--volume /media/anzhenghe/doc/DockerDir/gitlab/config:/etc/gitlab \
--volume /media/anzhenghe/doc/DockerDir/gitlab/logs:/var/log/gitlab \
--volume /media/anzhenghe/doc/DockerDir/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
odoo ERP CRM 企业应用
启动PostgreSQL服务器
sudo docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo -e POSTGRES_DB=postgres --name odoo-db postgres:10
启动一个Odoo实例
sudo docker run -p 8069:8069 --name odoo --link odoo-db:db -t odoo
thingsboard 物联网平台
sudo docker run -it -p 9090:9090 -p 1883:1883 -p 5683:5683/udp -v /media/anzhenghe/doc/DockerDir/thingsboard/mytb-data:/data -v /media/anzhenghe/doc/DockerDir/thingsboard/mytb-logs:/var/logs/thingsboard --name mytb --restart always thingsboard/tb-postgres
docker run -运行这个容器
-it -将终端会话与当前ThingsBoard进程输出连接
-p 9090:9090 -将本地端口9090连接到公开的内部HTTP端口9090
-p 1883:1883 -将本地端口1883连接到暴露的内部MQTT端口1883
-p 5683:5683 -将本地端口5683连接到裸露的内部COAP端口5683
-v ~/.mytb-data:/data -将主机的目录挂载~/.mytb-data到ThingsBoard DataBase数据目录
-v ~/.mytb-logs:/var/log/thingsboard -将主机的目录挂载~/.mytb-logs到ThingsBoard日志目录
–name mytb -本机的友好本地名称
–restart always -在系统重新启动的情况下自动启动ThingsBoard,在发生故障的情况下自动重新启动ThingsBoard。
thingsboard/tb-postgres -搬运工图像,还可以是thingsboard/tb-cassandra或thingsboard/tb
默认用户名和密码
类型 | 用户名 | 邮箱 | 密码 |
---|---|---|---|
Systen | Administrator | sysadmin@thingsboard.org | sysadmin |
Tenant | Administrator | tenant@thingsboard.org | tenant |
Customer | User | customer@thingsboard.org | customer |
物联网平台 WEB 安卓 苹果
sudo docker run -p 8085:8085 -p 9443:9443 mpherg/blynk-server
Blynk Server 0.41.10 successfully started.
All server output is stored in folder ‘/data/logs’ file.
Your Admin url is https://172.17.0.5:9443/admin
Your Admin login email is admin@blynk.cc
Your Admin password is admin
部署项目服务器时,为了应对停电等情况影响正常web项目的访问,会把Docker容器设置为开机自动启动。在使用docker run启动容器时,使用–restart参数来设置:
# docker run -m 512m --memory-swap 1G -it -p 58080:8080 --restart=always
--name bvrfis --volumes-from logdata mytomcat:4.0 /root/run.sh
–restart具体参数值详细信息:
no - 容器退出时,不重启容器;
on-failure - 只有在非0状态退出时才从新启动容器;
always - 无论退出状态是如何,都重启容器;
还可以在使用on - failure策略时,指定Docker将尝试重新启动容器的最大次数。默认情况下,Docker将尝试永远重新启动容器。
# sudo docker run --restart=on-failure:10 redis
如果创建时未指定 --restart=always ,可通过update 命令
docker update --restart=always xxx
c9 ide 可能不是官方的
sudo docker run -it -d -p 80:80 \
-v /workspace/:/Docker/Cloud9/workspace/ kdelfour/cloud9-docker