forked from SimpleHomelab/docker-traefik
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbash_aliases
executable file
·314 lines (277 loc) · 14.1 KB
/
bash_aliases
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
# This is my current / up-to-date list of bash aliases.
# This is the exact same file that is on all of my hosts - synced using Synthing.
# Aliases will automatically adapt slightly based on the host.
# SOURCE ENVIRONMENTAL VARIABLES FOR BASH_ALIASES
# Sensitive information goes into the .env file - this allows me to share my bash aliases with the community
# Rename shared/config/bash_aliases.env.example and use it as a starter
source ~/.bash_aliases.env
# DOCKER COMMON - All docker commands start with "d"
alias dstop='sudo docker stop $(docker ps -a -q)'
alias dstopall='sudo docker stop $(sudo docker ps -aq)'
alias drm='sudo docker rm $(docker ps -a -q)'
alias dprunevol='sudo docker volume prune'
alias dprunesys='sudo docker system prune -a'
alias ddelimages='sudo docker rmi $(docker images -q)'
alias derase='dstopcont ; drmcont ; ddelimages ; dvolprune ; dsysprune'
alias dprune='ddelimages ; dprunevol ; dprunesys'
alias dexec='sudo docker exec -ti'
alias dps='sudo docker ps -a'
alias dpss='sudo docker ps -a --format "table {{.Names}}\t{{.State}}\t{{.Status}}\t{{.Image}}" | (sed -u 1q; sort)'
alias ddf='sudo docker system df'
alias dlogs='sudo docker logs -tf --tail="50" '
alias dp600='sudo chown -R root:root /home/$BA_USERNAME/docker/secrets ; sudo chmod -R 600 /home/$BA_USERNAME/docker/secrets ; sudo chown -R root:root /home/$BA_USERNAME/docker/.env ; sudo chmod -R 600 /home/$BA_USERNAME/docker/.env'
alias dp777='sudo chown -R $BA_USERNAME:$BA_USERNAME /home/$BA_USERNAME/docker/secrets ; sudo chmod -R 777 /home/$BA_USERNAME/docker/secrets ; sudo chown -R $BA_USERNAME:$BA_USERNAME /home/$BA_USERNAME/docker/.env ; sudo chmod -R 777 /home/$BA_USERNAME/docker/.env'
# depends on having jq installed, but makes it so much easier. https://github.com/htpcBeginner/docker-traefik/commit/d827c85565767c761e100a133088135cba5c3ffa
alias dips="sudo docker ps -q | xargs -n 1 docker inspect --format '{{json .}}' | jq -rs 'map(.Name,.NetworkSettings.Networks[].IPAddress) | .[]'"
dip() {
sudo docker inspect --format '{{json .}}' "$1" | jq -rs 'map(.NetworkSettings.Networks[].IPAddress) | .[]'
}
# DOCKER COMPOSE FILE BY HOSTNAME
# I am sure there is a better way than using $HOSTNAME - if you do, feel free to share/contribute
case $HOSTNAME in
cDoc|CDOC|cdoc)
alias dcrun2='sudo docker compose -f /home/$BA_USERNAME/docker/docker-compose-t2.yml'
;;
dSHB|DSHB|dshb)
alias dcrun2='sudo docker compose -f /home/$BA_USERNAME/docker/docker-compose-t2-web.yml'
;;
DMS)
alias dcrun2='sudo docker compose -f /home/$BA_USERNAME/docker/docker-compose.yml'
;;
zSyn|zsyn|ZSYN)
alias dcrun2='sudo docker-compose -f /volume1/docker/docker-compose-t2-synology.yml'
;;
*)
esac
# DOCKER COMPOSE TRAEFIK 2 - All docker-compose commands start with "dc"
alias dclogs2='dcrun2 logs -tf --tail="50" '
alias dcup2='dcrun2 up -d --build --remove-orphans'
alias dcdown2='dcrun2 down --remove-orphans'
alias dcrec2='dcrun2 up -d --force-recreate'
alias dcstop2='dcrun2 stop'
alias dcrestart2='dcrun2 restart '
alias dcpull2='dcrun2 pull'
alias startbasic='dcup2 $(cat /home/$BA_USERNAME/docker/scripts/cloudserver/basic-services.txt)'
alias stopbasic='dcstop2 $(cat /home/$BA_USERNAME/docker/scripts/cloudserver/basic-services.txt)'
alias stopmedia='dcstop2 $(cat /home/$BA_USERNAME/docker/scripts/cloudserver/media-services.txt)'
alias startmedia='dcup2 $(cat /home/$BA_USERNAME/docker/scripts/cloudserver/media-services.txt)'
alias webrs='dcrec2 php7 redis nginx'
# CROWDSEC
alias cscli='dcrun2 exec -t crowdsec cscli'
alias csdecisions='cscli decisions list'
alias csalerts='cscli alerts list'
alias csinspect='cscli alerts inspect -d'
alias cshubs='cscli hub list'
alias csparsers='cscli parsers list'
alias cscollections='cscli collections list'
alias cshubupdate='cscli hub update'
alias cshubupgrade='cscli hub update'
alias csmetrics='cscli metrics'
alias csmachines='cscli machines list'
alias csbouncers='cscli bouncers list'
alias csfbstatus='sudo systemctl status crowdsec-firewall-bouncer.service'
alias csfbstart='sudo systemctl start crowdsec-firewall-bouncer.service'
alias csfbstop='sudo systemctl stop crowdsec-firewall-bouncer.service'
alias csfbrestart='sudo systemctl restart crowdsec-firewall-bouncer.service'
alias tailkern='sudo tail -f /var/log/kern.log'
alias tailauth='sudo tail -f /var/log/auth.log'
alias tailcsfb='sudo tail -f /var/log/crowdsec-firewall-bouncer.log'
alias csbrestart='dcrec2 traefik-bouncer ; csfbrestart'
# WEB STACK
alias webrs='dcrec2 php7 redis nginx'
# MONITORING STACK
alias dcmlogs2='dcrun2 logs -tf --tail="50" $(cat /home/$BA_USERNAME/docker/scripts/monitoring-services.txt)'
alias dcmrec2='dcrun2 up -d --force-recreate $(cat /home/$BA_USERNAME/docker/scripts/monitoring-services.txt)'
alias dcmstop2='dcrun2 stop $(cat /home/$BA_USERNAME/docker/scripts/monitoring-services.txt)'
# DOCKER TRAEFIK 1 SWARM
alias dslogs='sudo docker service logs -tf --tail="50"'
alias dsps='sudo docker stack ps zstack'
alias dsse='sudo docker stack services zstack'
alias dsls='sudo docker stack ls'
alias dsrm='sudo docker stack rm'
alias dsup='sudo docker stack deploy --compose-file /home/$BA_USERNAME/docker/docker-compose-swarm.yml zstack'
alias dshelp='echo "dslogs dsps dsse dsls dsrm dsup"'
# MOSQUITTO
alias mossub="mosquitto_sub -v -u $BA_MOSQUITTO_USERNAME -P $BA_MOSQUITTO_PASSWORD -h $BA_MOSQUITTO_HOST -p 1883 -t '#'"
# PiHole
alias pidis='bash /home/$BA_USERNAME/server/scripts/pihole-disable.sh'
alias pien='bash /home/$BA_USERNAME/server/scripts/pihole-enable.sh'
alias pi10='bash /home/$BA_USERNAME/server/scripts/pihole-10.sh'
alias piup='bash /home/$BA_USERNAME/server/scripts/pihole-update.sh'
alias rpi3up='bash /home/$BA_USERNAME/server/scripts/rpi3-update.sh'
alias rpi0up='bash /home/$BA_USERNAME/server/scripts/rpi0-update.sh'
# VNC
alias vnc1='vncserver -geometry 1270x720 -depth 24'
alias vnckill1='vncserver -kill :1'
# COMPRESSION
alias untargz='tar --same-owner -zxvf'
alias untarbz='tar --same-owner -xjvf'
alias lstargz='tar -ztvf'
alias lstarbz='tar -jtvf'
alias targz='tar -zcvf'
alias tarbz='tar -cjvf'
# NAVIGATION
alias cd..='cd ..'
alias ..='cd ..'
alias ...='cd ../..'
alias .3='cd ../../..'
alias .4='cd ../../../..'
alias .5='cd ../../../../..'
# SYNC AND COPY
alias scp='scp -r'
alias rsynce='sudo rsync -avzh --progress --force --delete --exclude-from /home/$BA_USERNAME/docker/shared/config/rsync-exclude'
alias rsyncne='sudo rsync -avzh --progress --force --delete'
alias cpn='cp --verbose' # native copy
alias cp='sudo rsync -azh --info=progress2' # copy files with rsync
alias mv='mv --verbose' # native move
# SEARCH AND FIND
alias gh='history|grep' # search bash history
alias findr='sudo find / -name'
alias grep='grep --color=auto'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
# TRASH - trash-cli
alias rmt='trash-put'
alias rm='rm -r'
alias tput='trash-put'
alias tempty='trash-empty ; sudo trash-empty ; sudo -H trash-empty'
alias tlist='trash-list'
alias srmt='sudo trash-put'
# FILE SIZE AND STORAGE
alias fdisk='sudo fdisk -l'
alias uuid='sudo vol_id -u'
alias ls='ls -F --color=auto'
alias ll='ls -alh --color=auto'
alias lt='ls --human-readable --color=auto --size -1 -S --classify' # file size sorted
alias lsr='ls --color=auto -t -1' # recently modified
alias mnt='mount | grep -E ^/dev | column -t' # show mounted drives
alias dirsize='sudo du -hx --max-depth=1'
alias dirusage='du -ch | grep total' # Grabs the disk usage in the current directory
alias diskusage='df -hl --total | grep total' # Gets the total disk usage on your machine
alias partusage='df -hlT --exclude-type=tmpfs --exclude-type=devtmpfs' # Shows the individual partition usages without the temporary memory values
alias usage10='du -hsx * | sort -rh | head -10' # Gives you what is using the most space. Both directories and files. Varies on current directory
# BASH
alias baupdate='. ~/.bashrc'
alias baedit='nano /home/$BA_USERNAME/.bash_aliases'
alias bacopy='sudo cp /home/$BA_USERNAME/.bash_aliases* /root/'
alias badomain='echo $BA_DOMAINNAME' # for troubleshooting
# GIT AND SITE MANAGEMENT
alias gcpush='echo "Usage: gcommit ../commits/date.txt" ; cd /home/$BA_USERNAME/docker ; bash scripts/doccheck.sh'
alias gpush='cd /home/$BA_USERNAME/docker ; git push'
alias ggraph='git log --all --decorate --oneline --graph'
# MAIL SERVER
alias nullsend='sudo echo 1 > /var/spool/nullmailer/trigger'
alias tmail1='echo "Tmail1 This mail test needs an email id after tmail1 command" ; echo "Test mail from zNUC using tmail1." | mail -s "tmail1 from zNUC"'
alias tmail2='echo "Tmail2 This is the message body" | mail -s "tmail2 this is the subject" info@$BA_DOMAINNAME -aFrom:server@$BA_DOMAINNAME'
alias tmail3='echo "Test mail from zNUC using tmail3." | mail -s "tmail3 from zNUC" $BA_MYEMAIL1'
alias pftest='mail -s "Postfix Mailgun Test mail" $BA_MYEMAIL1 <<< "A test message using Mailgun and Postfix"'
# UFW FIREWALL
alias ufwenable='sudo ufw enable'
alias ufwdisable='sudo ufw disable'
alias ufwallow='sudo ufw allow'
alias ufwlimit='sudo ufw limit'
alias ufwlist='sudo ufw status numbered'
alias ufwdelete='sudo ufw delete'
alias ufwreload='sudo ufw reload'
# SYSTEMD START, STOP AND RESTART
alias ctlreload='sudo systemctl daemon-reload'
alias ctlstart='sudo systemctl start'
alias ctlstop='sudo systemctl stop'
alias ctlrestart='sudo systemctl restart'
alias ctlstatus='sudo systemctl status'
alias ctlenable='sudo systemctl enable'
alias ctldisable='sudo systemctl disable'
alias ctlactive='sudo systemctl is-active'
alias shellstart='ctlstart shellinabox'
alias shellstop='ctlstop shellinabox'
alias shellrestart='ctlrestart shellinabox'
alias shellstatus='ctlstatus shellinabox'
alias sshstart='ctlstart ssh'
alias sshstop='ctlstop ssh'
alias sshrestart='ctlrestart ssh'
alias sshstatus='ctlstatus ssh'
alias ufwstart='ctlstart ufw'
alias ufwstop='ctlstop ufw'
alias ufwrestart='ctlrestart ufw'
alias ufwstatus='ctlstatus ufw'
alias webminstart='ctlstart webmin'
alias webminstop='ctlstop webmin'
alias webminrestart='ctlrestart webmin'
alias webminstatus='ctlstatus webmin'
alias sambastart='ctlstart smbd'
alias sambastop='ctlstop smbd'
alias sambarestart='ctlrestart smbd'
alias sambastatus='ctlstatus smbd'
alias nfsstart='ctlstart nfs-kernel-server'
alias nfsstop='ctlstop nfs-kernel-server'
alias nfsrestart='ctlrestart nfs-kernel-server'
alias nfsstatus='ctlstatus nfs-kernel-server'
alias nfsreload='sudo exportfs -a'
# INSTALLATION AND UPGRADE
alias update='sudo apt-get update'
alias upgrade='sudo apt-get update && sudo apt-get upgrade'
alias install='sudo apt-get install'
alias finstall='sudo apt-get -f install'
alias rinstall='sudo apt-get -f install --reinstall'
alias uninstall='sudo apt-get remove'
alias search='sudo apt-cache search'
alias addkey='sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com'
# CLEANING
alias clean='sudo apt-get clean && sudo apt-get autoclean'
alias remove='sudo apt-get remove && sudo apt-get autoremove'
alias purge='sudo apt-get purge'
alias deborphan='sudo deborphan | xargs sudo apt-get -y remove --purge'
alias cleanall='clean && remove && deborphan && purge'
# SHUTDOWN AND RESTART
alias shutdown='sudo shutdown -h now'
alias reboot='sudo reboot'
# NETWORKING
alias portsused='sudo netstat -tulpn | grep LISTEN'
alias showports='netstat -lnptu'
alias showlistening='lsof -i -n | egrep "COMMAND|LISTEN"'
alias ping='ping -c 5'
alias ipe='curl ipinfo.io/ip' # external ip
alias ipi='ipconfig getifaddr en0' # internal ip
alias header='curl -I' # get web server headers
# SYNOLOGY DSM COMMANDS
alias servicelist='sudo synoservicecfg --list' # does not work in DSM 7
alias servicestatus='sudo synosystemctl status'
alias servicestop='sudo synosystemctl stop'
alias servicehstop='sudo synoservicecfg --hard-stop' # does not work in DSM 7
alias servicestart='sudo synosystemctl start'
alias servicehstart='sudo synoservicecfg --hard-start' # does not work in DSM 7
alias servicerestart='sudo synosystemctl restart'
alias restartdocker='sudo synosystemctl restart pkgctl-Docker'
# MISCELLANEOUS
alias wget='wget -c'
alias nano='sudo nano -iSw$'
alias scxterm='bash /home/$BA_USERNAME/docker/scripts/xterm.sh'
# SYSTEM MONITORING
alias meminfo='free -m -l -t' # memory usage
alias psmem='ps auxf | sort -nr -k 4' # get top process eating memory
alias psmem10='ps auxf | sort -nr -k 4 | head -10' # get top process eating memory
alias pscpu='ps auxf | sort -nr -k 3' # get top process eating cpu
alias pscpu10='ps auxf | sort -nr -k 3 | head -10' # get top process eating cpu
alias cpuinfo='lscpu' # Get server cpu info
alias gpumeminfo='grep -i --color memory /var/log/Xorg.0.log' # get GPU ram on desktop / laptop
alias free='free -h'
# RCLONE
alias rcdlogs='tail -f /home/$BA_USERNAME/docker/logs/cloudserver/rclone-drive.log'
alias rcclogs='tail -f /home/$BA_USERNAME/docker/logs/cloudserver/rclone-crypt.log'
alias rcupmedia='bash /home/$BA_USERNAME/docker/scripts/cloudserver/upload-media-now.sh'
alias rcupmedialogs='tail -f /home/$BA_USERNAME/docker/logs/cloudserver/upload-media-now.log'
alias rcupdump='bash /home/$BA_USERNAME/docker/scripts/cloudserver/upload-dump.sh'
alias rcupdumplogs='tail -f /home/$BA_USERNAME/docker/logs/cloudserver/upload-dump.log'
alias rcrestart='sudo bash /home/$BA_USERNAME/docker/scripts/rclone-restart.sh'
alias rcstop='sudo bash /home/$BA_USERNAME/docker/scripts/rclone-stop.sh'
alias rcstart='sudo bash /home/$BA_USERNAME/docker/scripts/rclone-start.sh'
alias rcstatus='sudo bash /home/$BA_USERNAME/docker/scripts/rclone-status.sh'
alias rcps="ps -ef | grep '/usr/bin/rclone sync\|/usr/bin/rclone copy\|/usr/bin/rclone move'" # see running rclone copy sync or move
# YT-DLP
alias ytupdate='yt-dlp -U'
alias ytlist='yt-dlp --list-formats'
alias ytdump='yt-dlp --dump-json'
alias ytdv='yt-dlp --config-location /home/$BA_USERNAME/docker/appdata/yt-dlp/yt-dlp-video.conf'
alias ytdvc='yt-dlp --cookies "/home/$BA_USERNAME/docker/appdata/yt-dlp/cookies.txt" --config-location /home/$BA_USERNAME/docker/appdata/yt-dlp/yt-dlp-video.conf'
alias ytda='yt-dlp --config-location /home/$BA_USERNAME/docker/appdata/yt-dlp/yt-dlp-audio.conf'
alias ytdac='yt-dlp --cookies "/home/$BA_USERNAME/docker/appdata/yt-dlp/cookies.txt" --config-location /home/$BA_USERNAME/docker/appdata/yt-dlp/yt-dlp-audio.conf'