智能家居HomeAssistant(二)Docker安装homeassistant

目录

1、查找镜像

2、拉取镜像

3、查看镜像

4、启动镜像

5、查看容器运行状态

6、开机自动启动配置

7、自动重新启动配置

扩展:

下一篇MQTT配置:智能家居HomeAssistant(三)MQTT配置 


homeassistant功能介绍:智能家居HomeAssistant(一)介绍概览

1、查找镜像

docker search homeassistant

选择STARS最多的镜像

2、拉取镜像

docker pull homeassistant/home-assistant 

3、查看镜像

docker images homeassistant/home-assistant

4、启动镜像

docker run --init -d --name="home-assistant" -e "TZ=Asia/Shanghai" -v /PATH_TO_YOUR_CONFIG:/config --net=host homeassistant/home-assistant:latest

您需要替换/PATH_TO_YOUR_CONFIG为配置路径,例如,如果您选择配置路径为/home/hanhui/homeassistant,则命令将为:

docker run --init -d --name="home-assistant" -e "TZ=Asia/Shanghai" -v /home/hanhui/homeassistant:/config --net=host homeassistant/home-assistant:latest

5、查看容器运行状态

docker ps

6、开机自动启动配置

使用systemd自动启动home-assistant

/etc/systemd/system/home-assistant@YOUR_USER.service

YOUR_USER替换为Home Assistant将以其运行的用户帐户(通常为homeassistant)。尤其是Ubuntu 16.04。

如果您想使用Docker,以下模板应该适合您。

 

[Unit]
Description=Home Assistant
Requires=docker.service
After=docker.service

[Service]
Restart=always
RestartSec=3
ExecStart=/usr/bin/docker run --name=home-assistant-%i -v /home/%i/.homeassistant/:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/home-assistant
ExecStop=/usr/bin/docker stop -t 2 home-assistant-%i
ExecStopPost=/usr/bin/docker rm -f home-assistant-%i

[Install]
WantedBy=multi-user.target

 

您需要重新加载systemd以使守护程序知道新配置。

sudo systemctl --system daemon-reload
 
要使Home Assistant在启动时自动启动,请启用该服务。

sudo systemctl enable home-assistant@YOUR_USER
 
要禁用自动启动,请使用此命令。

sudo systemctl disable home-assistant@YOUR_USER
 
要立即启动Home Assistant,请使用此命令。

sudo systemctl start home-assistant@YOUR_USER
 
您也可以用start上面的内容替换stop为停止Home Assistant,restart重新启动Home Assistant和“状态”以查看简短的状态报告,如下所示。

hanhui@hanhui-virtual-machine:~$ sudo systemctl status home-assistant@hanhui 
● home-assistant@hanhui.service
   Loaded: loaded (/etc/systemd/system/home-assistant@hanhui.service; enabled; vendor preset: enabled)
   Active: active (running) since 二 2020-05-19 16:30:30 CST; 45min ago
  Process: 4336 ExecStopPost=/usr/bin/docker rm -f home-assistant-%i (code=exited, status=0/SUCCESS)
  Process: 4251 ExecStop=/usr/bin/docker stop -t 2 home-assistant-%i (code=exited, status=0/SUCCESS)
 Main PID: 4352 (docker)
   CGroup: /system.slice/system-home\x2dassistant.slice/home-assistant@hanhui.service
           └─4352 /usr/bin/docker run --name=home-assistant-hanhui -v /home/hanhui/.homeassistant/:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/home
...

要获得家庭助理的日志记录输出,请简单使用journalctl。

sudo journalctl -f -u home-assistant@YOUR_USER
 
由于日志可以快速滚动,因此您可以选择仅查看错误行:

sudo journalctl -f -u home-assistant@YOUR_USER | grep -i 'error'
 
使用Home Assistant时,您可以轻松地重新启动系统,然后通过使用以下命令组合上述命令来查看日志输出 &&

sudo systemctl restart home-assistant@YOUR_USER && sudo journalctl -f -u home-assistant@YOUR_USER
 

7、自动重新启动配置


失败时自动重新启动HOME ASSISTANT

如果要在崩溃后自动重新启动Home Assistant服务,请将以下行添加到[Service]单元文件的部分:

Restart=on-failure
RestartSec=5s

 

扩展:

如果Home Assistant的时区异常,非Asia/shanghai时区。

输入如下命令,将宿主机的timezone复制替换HA容器中的timezone。

docker cp /etc/timezone 1eea462d3c39:/etc/    

(注:1eea462d3c39是你的HA容器ID)

 

下一篇MQTT配置:智能家居HomeAssistant(三)MQTT配置 

  • 6
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
以下是在Ubuntu服务器上安装DockerDocker Compose的步骤: 1. 更新apt-get软件包列表: ``` sudo apt-get update ``` 2. 安装Docker的先决条件: ``` sudo apt-get install apt-transport-https ca-certificates curl software-properties-common ``` 3. 添加Docker官方的GPG密钥: ``` curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - ``` 4. 添加Docker官方的APT软件源: ``` sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" ``` 5. 更新apt-get软件包列表: ``` sudo apt-get update ``` 6. 安装Docker: ``` sudo apt-get install docker-ce ``` 7. 启动Docker服务: ``` sudo systemctl start docker ``` 8. 将Docker服务设置为在系统启动时自动启动: ``` sudo systemctl enable docker ``` 9. 安装Docker Compose: ``` sudo curl -L "https://github.com/docker/compose/releases/download/1.29.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose ``` 注意:在上面的命令中,我们使用了Docker Compose的1.29.1版本,如果需要使用其他版本,请将命令中的版本号替换为所需版本。 10. 将docker-compose进制文件设置为可执行: ``` sudo chmod +x /usr/local/bin/docker-compose ``` 11. 验证DockerDocker Compose是否成功安装: ``` docker --version docker-compose --version ``` 如果输出了DockerDocker Compose的版本号,则说明安装成功。 现在,您可以使用DockerDocker Compose在Ubuntu服务器上运行Home Assistant了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值