version: '3.8'
services:
db:
image: postgres
restart: always
environment:
POSTGRES_USER: user
POSTGRES_PASSWORD: 1234
POSTGRES_DB: postgres
volumes:
- pgdata:/var/lib/postgresql/data
ports:
- "5432:5432"
volumes:
pgdata:
This Bash script is designed to perform backup operations for a MySQL/MariaDB server container and restart it. It includes a safety check to ensure that the specified branch name does not contain the character '/'.
- Docker installed on the host machine.
sudo
privileges to execute Docker and rsync commands.
./backup_and_restart.sh [BRANCH]
#!/bin/bash
#cannot contain character /
#TODO: do check, fail if character present
BRANCH="${1:-default}"
rootDefaults=/home/josefjanda/J/docker-local-env/mariadb
sudo docker exec -i dev_mariadb mariadb --defaults-extra-file=$rootDefaults -e "purge binary logs before now()"
docker stop dev_mariadb
sudo rsync -var --progress --delete /home/josefjanda/J/docker-local-env/mariadb /data/tmp/mariadb/$BRANCH/
sudo rsync -var --progress --delete /var/log/mysql/ /data/tmp/mysqllog/$BRANCH/
docker start dev_mariadb
#!/bin/bash
sudo /usr/local/bin/docker-compose -f /speedy/config/docker-dev-env/docker-compose.yml up -d
#!/bin/bash
sudo /usr/local/bin/docker-compose -f /speedy/config/docker-dev-env/docker-compose.yml down
#!/bin/bash
sudo /usr/local/bin/docker-compose -f /speedy/config/docker-dev-env/docker-compose.yml down
docker volume rm docker-dev-env_phpmyadmin_data
sudo /usr/local/bin/docker-compose -f /speedy/config/docker-dev-env/docker-compose.yml pull
sudo /usr/local/bin/docker-compose -f /speedy/config/docker-dev-env/docker-compose.yml build
sudo /usr/local/bin/docker-compose -f /speedy/config/docker-dev-env/docker-compose.yml up -d
#!/bin/bash
sudo /usr/local/bin/docker-compose -f /speedy/config/docker-dev-env/docker-compose.yml down
sudo /usr/local/bin/docker-compose -f /speedy/config/docker-dev-env/docker-compose.yml up -d
#!/bin/bash
#cannot contain character /
#TODO: do check, fail if character present
BRANCH="${1:-default}"
rootDefaults=/home/root/mysql-root-defaults
docker stop dev_mariadb
sudo rsync -var --progress --delete /data/tmp/mysql/$BRANCH/ /speedy/mysql/
sudo rsync -var --progress --delete /data/tmp/mysqllog/$BRANCH/ /var/log/mysql/
docker start dev_mariadb
//src/main/java/eu/svetit/skyport/util/mail/SkyportMailer.java
public Session createSession(IEmailMessage emailMessage)
{
Properties properties = new Properties();
properties.setProperty("mail.smtp.host", "localhost");
properties.setProperty("mail.smtp.port", "25");
return Session.getInstance(properties);
}
//src/main/java/eu/svetit/skyport/components/pojo/norm/ListNormActionsPanel.java
public void onClick(AjaxRequestTarget target)
{
SkyportApplication.get().runWithForcedEmailingEnabled(() -> {
int notifiedUsersCount = getEntityApi().notifyUsersByEmail(getModelObject());
getSession().info("Bylo odesláno " + notifiedUsersCount + " notifikací.");
AjaxNotificationPanel.notifyAll(target, this);
});
}
// Behavior for killing session after a timeout
static class KillSessionAfterTimeoutBehavior extends AjaxSelfUpdatingTimerBehavior
{
private static final long serialVersionUID = 1L;
private Duration sessionLifeTime;
public KillSessionAfterTimeoutBehavior(Duration updateInterval, Duration sessionLifeTime) {
super(updateInterval);
this.sessionLifeTime = sessionLifeTime;
}
@Override
protected void onPostProcessTarget(AjaxRequestTarget target) {
super.onPostProcessTarget(target);
System.out.println("Current session life time: " + sessionLifeTime);
System.out.println("Update interval: " + getUpdateInterval());
if (sessionLifeTime.compareTo(getUpdateInterval()) <= 0) {
stop(target);
System.out.println("Invalidating session...");
SkyportSession.get().invalidate();
System.out.println("Session killed due to timeout");
throw new RestartResponseException(SignInPage.class);
} else {
sessionLifeTime = sessionLifeTime.minus(getUpdateInterval());
System.out.println("Updated session life time: " + sessionLifeTime);
}
}
}
##testování úprava SignPage
/**
*
* Construct.
*
* @param parameters
*/
public SignInPage(final PageParameters parameters)
{
super(parameters);
}
@Override
protected void onInitialize()
{
super.onInitialize();
if (WicketAppUtil.localMode() && !keepSignedInUser && !WicketAppUtil.profile("jjanda"))
{
SkyportSession.get().signIn(Dbu.getRecord(SkyportUser.class, SkyportConfig.getSignInAsAdmin()));
}
if (AuthDataSessionBase.isUserSignedIn())
{
throw new RestartResponseException(SkyportApplication.get().getHomePage());
}
}