• This repository has been archived on 15/Dec/2021
  • Stars
    star
    688
  • Rank 65,712 (Top 2 %)
  • Language
    Java
  • License
    Apache License 2.0
  • Created over 7 years ago
  • Updated almost 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A sample app that uses a Java Spring Boot backend connected to a database to display a fictitious art shop with a React front-end.

AtSea Shop Demonstration Application

The AtSea Shop is a demonstration application comprised of:

  • Java REST application written using Spring-Boot,
  • a database for product inventory, customer data, and orders,
  • a React shopping cart,
  • a NGINX reverse proxy implementing https,
  • a payment gateway to simulate certificate management

Requirements

This example uses features in Docker 17.05 CE Edge. Install this version to run the example.

Building and Running the AtSea Shop

Secrets

This application uses Docker secrets to secure the application components. The reverse proxy requires creating a certificate that is stored as a secret and the payment also requires a password stored as a secret. To create a certificate and add as a secret:

mkdir certs

openssl req -newkey rsa:4096 -nodes -sha256 -keyout certs/domain.key -x509 -days 365 -out certs/domain.crt

docker secret create revprox_cert certs/domain.crt

docker secret create revprox_key certs/domain.key

docker secret create postgres_password certs/domain.key

To create a secret for staging the payment gateway:

echo staging | docker secret create staging_token - 

Run as an application

To run the AtSea shop as an application:

docker-compose up --build

Deploy to a swarm

#If you need to create a Swarm
docker swarm init
docker stack deploy -c docker-stack.yml atsea

A simplified development environment

This compose file creates a simplified development environment consisting of only the application server and the database.

docker-compose --file docker-compose-dev.yml up --build

The AtSea Shop

The URL for the content is http://localhost:8080/

REST API

Documentation for REST calls: REST API

More Repositories

1

example-voting-app

Example distributed app composed of multiple containers for Docker, Compose, Swarm, and Kubernetes
C#
4,558
star
2

docker-swarm-visualizer

A visualizer for Docker Swarm Mode using the Docker Remote API, Node.JS, and D3
JavaScript
3,250
star
3

101-tutorial

JavaScript
335
star
4

wordsmith

Sample project with Docker containers running under Kubernetes
Java
257
star
5

compose-dev-env

Example used to try a compose application with Docker Dev Environments
Go
137
star
6

docker-fifth-birthday

100
star
7

node-bulletin-board

Sample bulletin board app in Node.js and Vue.js
JavaScript
98
star
8

single-dev-env

Example used to try a single container sample of Docker Dev Environments
Go
86
star
9

dockercoins

HTML
71
star
10

global-2018-hol

Hands-On labs for the global 2018 event series
PHP
59
star
11

aspnet-monitoring

Monitoring ASP.NET Fx applications in Windows Docker containers, using Prometheus
JavaScript
56
star
12

linux_tweet_app

A very simple webapp based on NGINX
HTML
47
star
13

javaee-demo

Demo migrating a JavaEE application to Docker
Java
40
star
14

newsletter-signup

Newsletter Sign Up - a .NET Framework app using Docker containers on Windows
JavaScript
28
star
15

docker-hub-ml-project

Python
27
star
16

gopher-task-system

A Task System using Go Docker SDK.
Go
20
star
17

buildme

buildme
Dockerfile
18
star
18

windows-2003

Sample apps taken from Windows Server 2003 and running in Docker Windows containers
Dockerfile
14
star
19

link-shortener-typescript

A Simple URL Shortener built using TypeScript and Nest.js powered with Docker
TypeScript
14
star
20

wearedevelopers-2023

The sample application used for Docker's WeAreDevelopers 2023 talk
JavaScript
8
star
21

elastic-windows

Samples for Elasticsearch and Kibana running in Windows Docker containers
PowerShell
7
star
22

helloworld-demo-python

Demonstrating Hello World Python Example for docker init CLI
Python
7
star
23

student-record-management

Building a Student Record Management app using .NET and Docker
C#
7
star
24

docker-init-demos

Sample apps to demonstrate the power of docker init
Rust
6
star
25

.github

5
star
26

node-mongo-docker

Creating a REST API using Node, Mongo and Docker
JavaScript
3
star
27

dotnetconf19

Code for the 2019 .NET Conf challenge
C#
2
star
28

helloworld-demo-node

Example used to demonstrate docker init CLI for a simple Hello World Node Program
Dockerfile
2
star
29

build-cloud-cookbook

Rust
2
star
30

dind-rapid7

Shell
1
star
31

project-template

A Sample repository template for a new project
Dockerfile
1
star