There are several ways for you to reach Krakatoa:
1. From Jakarta to Carita / Anyer, then take speedboat. You can spend the night at hotels in Carita / Anyer, about 3 hour by car from Jakarta.
2. From Jakarta to Tanjung Lesung, more private & secluded beach resort about 4-5 hours from Jakarta then take speedboat to Krakatoa.
3. The most expensive option for you is to take a yacht from Jakarta (Ancol marina) and sail to Krakatoa directly from there. about 5 years ago