mirror of https://github.com/portainer/portainer
chore(distribution): add rpm based packaging and system unit file (#1292)
parent
f9218768c1
commit
c9ccdaaea4
@ -0,0 +1,17 @@
|
||||
[Unit]
|
||||
Description=Portainer.io management ui
|
||||
After=docker.service
|
||||
Wants=docker.service
|
||||
Wants=docker-latest.service
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
Restart=always
|
||||
RestartSec=3
|
||||
Environment=ASSETS=/usr/share/portainer
|
||||
Environment=DBFILES=/var/lib/portainer
|
||||
EnvironmentFile=-/etc/sysconfig/%p
|
||||
ExecStart=/usr/sbin/portainer -a $ASSETS -d $DBFILES
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
@ -0,0 +1,96 @@
|
||||
Name: portainer
|
||||
Version: 1.15.0
|
||||
Release: 0
|
||||
License: Zlib
|
||||
Summary: A lightweight docker management UI
|
||||
Url: https://portainer.io
|
||||
Group: BLAH
|
||||
Source0: https://github.com/portainer/portainer/releases/download/%{version}/portainer-%{version}-linux-amd64.tar.gz
|
||||
Source1: portainer.service
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
%if 0%{?suse_version}
|
||||
BuildRequires: help2man
|
||||
%endif
|
||||
Requires: docker
|
||||
%{?systemd_requires}
|
||||
BuildRequires: systemd
|
||||
|
||||
%description
|
||||
Portainer is a lightweight management UI which allows you to easily manage
|
||||
your different Docker environments (Docker hosts or Swarm clusters).
|
||||
Portainer is meant to be as simple to deploy as it is to use.
|
||||
It consists of a single container that can run on any Docker engine
|
||||
(can be deployed as Linux container or a Windows native container).
|
||||
Portainer allows you to manage your Docker containers, images, volumes,
|
||||
networks and more ! It is compatible with the standalone Docker engine and with Docker Swarm mode.
|
||||
|
||||
%prep
|
||||
%setup -qn portainer
|
||||
|
||||
%build
|
||||
%if 0%{?suse_version}
|
||||
help2man -N --no-discard-stderr ./portainer > portainer.1
|
||||
%endif
|
||||
|
||||
%install
|
||||
# Create directory structure
|
||||
install -D -m 0755 portainer %{buildroot}%{_sbindir}/portainer
|
||||
install -d -m 0755 %{buildroot}%{_datadir}/portainer
|
||||
install -d -m 0755 %{buildroot}%{_localstatedir}/lib/portainer
|
||||
install -D -m 0644 %{S:1} %{buildroot}%{_unitdir}/portainer.service
|
||||
%if 0%{?suse_version}
|
||||
install -D -m 0644 portainer.1 %{buildroot}%{_mandir}/man1/portainer.1
|
||||
( cd %{buildroot}%{_sbindir} ; ln -s service rcportainer )
|
||||
%endif
|
||||
# populate
|
||||
# don't install docker binary with package use system wide installed one
|
||||
for src in css fonts ico images index.html js;do
|
||||
cp -a $src %{buildroot}%{_datadir}/portainer/
|
||||
done
|
||||
|
||||
%pre
|
||||
%if 0%{?suse_version}
|
||||
%service_add_pre portainer.service
|
||||
#%%else # this does not work on rhel 7?
|
||||
#%%systemd_pre portainer.service
|
||||
true
|
||||
%endif
|
||||
|
||||
%preun
|
||||
%if 0%{?suse_version}
|
||||
%service_del_preun portainer.service
|
||||
%else
|
||||
%systemd_preun portainer.service
|
||||
%endif
|
||||
|
||||
%post
|
||||
%if 0%{?suse_version}
|
||||
%service_add_post portainer.service
|
||||
%else
|
||||
%systemd_post portainer.service
|
||||
%endif
|
||||
|
||||
%postun
|
||||
%if 0%{?suse_version}
|
||||
%service_del_postun portainer.service
|
||||
%else
|
||||
%systemd_postun_with_restart portainer.service
|
||||
%endif
|
||||
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%{_sbindir}/portainer
|
||||
%dir %{_datadir}/portainer
|
||||
%{_datadir}/portainer/css
|
||||
%{_datadir}/portainer/fonts
|
||||
%{_datadir}/portainer/ico
|
||||
%{_datadir}/portainer/images
|
||||
%{_datadir}/portainer/index.html
|
||||
%{_datadir}/portainer/js
|
||||
%dir %{_localstatedir}/lib/portainer/
|
||||
%{_unitdir}/portainer.service
|
||||
%if 0%{?suse_version}
|
||||
%{_mandir}/man1/portainer.1*
|
||||
%{_sbindir}/rcportainer
|
||||
%endif
|
Loading…
Reference in new issue